文档章节

Java基础

求行者
 求行者
发布于 2017/04/11 23:52
字数 827
阅读 9
收藏 0

逻辑控制

if-else
do{}while()
while(){}
break-continue
for(){}
forEach(){}

对象与类

内部类

静态成员

异常及异常链

字符串

string
stringBuilder

包装类与字符串

Date与calendar

Math

Java集合

https://www.cnblogs.com/ysocean/p/6555373.html

反射

多线程

Socket

Lambda表达式

 

 

静态main方法【程序入口】

总说方法

    静态方法和静态变量是属于某一个类,而不属于类的对象。

  • 静态方法和静态变量的引用直接通过类名引用。
  • 在静态方法中不能调用非静态方法和引用非静态的成员变量。反之,则可以。

      原因:静态变量和静态方法在类被加载的时候就分配了内存空间,当非静态的方法调用他们的时候,他们已经有了内存空间,当然可以调用!

使用

  • 用static修饰的方法,无须产生类的实例对象就可以调用该方法。
  • 没有static修饰的方法,需要产生一个类的实例对象才可以调用该方法。

根本原因

  • static方法是属于类的,在类创建的时候就产生在内存中了。可以直接使用,普通方法的话是属于类对象的,必须有对象来调用。mian是入口函数,用static来定义。
  • //jvm启动时的代码:
    //直接去找static的,参数为String数组的main方法。
    mainID = (*env)->GetStaticMethodID(env, mainClass, "main","([Ljava/lang/String;)V");
  • 因为main方法是Java解释器调用的,那时候还没有任何对象产生,所以main方法必须要static来修饰。

Scanner对象控制台读入:

输入int类型的数据时候用到的:

Scanner input = new Scanner (System.in);

System.out.println("请输入: ");

int a = input.nextInt();

System.out.print(a);

//相比较String类型的

Scanner input = new Scanner (System.in);

System.out.print("请输入: ");

String a = input.next();

System.out.print(a);

next()获取的是一个有效字符,无效字符会自动过滤掉,返回值是一个字符串
nextInt()获取的是一个数字字符,返回值是一个int类型的数字

输入一个Char类型的字符:

Scanner input = new Scanner (System.in);

System.out.print("请输入: ");

String a = input.next();

char s=a.charAt(0);

System.out.print(a);

注:

charAt(int index)方法是一个能够用来检索特定索引下的字符的String实例的方法.

charAt()方法返回指定索引位置的char值。索引范围为0~length()-1.

如: str.charAt(0)检索str中的第一个字符,str.charAt(str.length()-1)检索最后一个字符.

用Scanner实现字符串的输入有两种方法:

1、next():

next()一定要读取到有效字符后才可以结束输入,next()方法会自动去掉空格键、Tab键或Enter键等结束符[只有在输入有效字符之后,next()方法才将其后输入的空格键、Tab键或Enter键等视为分隔符或结束符]。

简单地说,next()查找并返回来自此扫描器的下一个完整标记。完整标记的前后是与分隔模式匹配的输入信息,所以next方法不能得到带空格的字符串

2、nextLine()     

  nextLine()方法的结束符只是Enter键,即nextLine()方法返回的是Enter键之前的所有字符,它是可以得到带空格的字符串的。

Web项目的入口

 

© 著作权归作者所有

上一篇: 计算机体系
下一篇: 前端基础
求行者
粉丝 2
博文 71
码字总数 84898
作品 0
海淀
程序员
私信 提问

暂无文章

TypeScript……真香

写前端或者用 node 写命令行小工具一直采用的 es6 的语法,对于 TypeScript 则是秉持敬而远之的态度,毕竟团队中多推广一门语言所需要花费的精力都是让人望而却步的。所以对于 JavaScript 的...

郁也风
33分钟前
3
0
shell基本案例

1、自定义rm linux系统的rm命令太危险,一不小心就会删除掉系统文件。 写一个shell脚本来替换系统的rm命令,要求当删除一个文件或者目录时,都要做一个备份,然后再删除。下面分两种情况,做...

寰宇01
40分钟前
3
0
分享一波 ZooKeeper 面试题

ZooKeeper是什么? ZooKeeper提供了什么? Zookeeper文件系统 ZAB协议? 四种类型的数据节点 Znode Zookeeper Watcher 机制 -- 数据变更通知 客户端注册Watcher实现 服务端处理Watcher实现 ...

搜云库技术团队
54分钟前
2
0
谈谈你对volatile的理解

1、volatile是Java虚拟机提供的轻量级的同步机制 -保证可见性 -不保证原子性 -禁止指令重排 2、JMM你谈谈 JMM(Java内存模型,简称JMM)本身是一种抽象的概念并不真实存在 ,它描述的是一组规...

一只小青蛙
今天
2
0
Redox OS 发布 0.5 版

Redox OS 是一个几乎完全以 Rust 语言编写的通用操作系统及周围生态(例如文件系统、显示服务器及 Rust 版本的 libc)。其遵循微内核架构,在一定程度上兼容于 POSIX。 该项目于日前发布了 ...

linuxCool
今天
4
0

没有更多内容

加载失败,请刷新页面

加载更多

返回顶部
顶部