When we type the name of clas:
The name should be started by capital and there is no white-space between words. (unless the word is required to be all capitals)
The declaration of variables is almost the same as C.
except for the constant variables:
we use the keyword: final in java for constat variables.
Recall different types of variables:
When declaring the float and long type, we should better add F or L
Just like C, we should notice if there is any difference between the result and factors of operation.
Don't forget the boolean type:
the boolean type only has true or false as value.
In this program, if it is true performance the relevant part:
Assignment conversion:
there are three ways to convert:
Ohter some of the objects we can use in this package:
without the main method, the program cannot be run.
Assume we have created a Address class:
And we invoke it as below:
M
These manipulating objects in the computer’s heap memory.
Java handles memory using a garbage collector, when there is no variable storing a reference, then the object in memory is marked for deletion by the garbage collector
在JAVA中 万物皆是类和对象
Scanner是一个引用类型
使用步骤:
1.导包 2.创建 3.使用 (具体可参考API文档)
若想只接收一个char,用如下代码(在next()方法之后加charAt(0)方法)
Scanner里有许多方法用于接受不同类型的输入:
如next()接收字符串,但遇到空格或回车就停止接收(同时不会接收空格或回车)
nextLine()也接受字符串,同样遇到空格或回车就停止接收,但会接收空格或回车。
其他方法(如nextInt()等)与nextLine()一样,遇到空格或回车就停止接收,会接收空格或回车。
因此当next()等方法与nextLine()方法连用时,因为其它Scanner方法不取走空格或回车,导致空格或回车继续留在内存里。
此后当nextLine()方法被调用时,该方法会直接读取识别之前留下的空格或回车,导致其停止读取并运行下一行命令。
看起来的效果就好像Scanner方法没有被调用,编译器直接运行下一行代码一样。
解决方法:
在每个Scanner方法后面加nextLine(),如下(直接用正在使用的Scanner对象即可,不用再重写实例化一个Scanner)
匿名对象只有 new Xxxx 没有左边等号的部分,匿名对象只能用于只需要使用一次的对象里。