1.new出来的东西存储在堆内存,有默认值(引用类型如String的默认值是null,int类型的默认值是0).
2.null常量直接输出会报错,但引用类型的值是null可以直接输出,控制台会打印null
3.所有引用类型的默认值都是null
4.null可以被强转为任何类型,可以调用该类的静态方法,但他仅仅是一个特殊值,并不代表属于任何类型(null instanceof Object会返回false),null == null返回true,同类型的null == null 会返回ture,不同类型的null == null在编译时会报错
5.方法之间是平级关系,不能嵌套定义
6.直接输出对象名,打印在控制台的结果是该对象名内存所存储的 所指向的堆内存的地址值.(输出对象名,打印地址值)
7.调用方法时,方法会被加载进栈内存,方法执行完毕后,会马上在栈内存消失
8.成员变量:类中方法外的变量
9.局部变量:方法内的变量(含形参的变量)
10.成员变量和局部变量的区别
(1)在类中的位置不同:成员变量在类中方法外,局部变量在方法内或方法的形参列表上
(2)在内存中的位置不同:成员变量在堆内存内,有默认值,而局部变量在栈内存内,需要初始化(第一次给变量赋值)后才能使用.
(3)生命的周期不同:成员变量在堆内存中,随着对象的存在而存在,随着对象的消失而消失,而局部变量随着方法的调用而存在,随着方法的调用完毕而消失
11.
private是一个权限修饰符,可以修饰成员(成员变量和成员方法),作用是保护成员不被别的类所访问,被private修饰的成员只能在本类中才能访问
12.
this关键字
(1)在类的方法中,如果局部变量的变量名和成员变量的变量名相同,会发生局部变量隐藏成员变量的情况,为了解决局部变量隐藏成员变量的问题,使用this关键字,this关键字所修饰的变量是成员变量
(2)this代表所在类的对象的引用,方法被哪个对象调用,this就代表哪个对象
13.
什么是封装
就是将类的成员变量用private关键字修饰,把这些成员变量隐藏在类内部,使外界不能直接访问,如果需要访问的话,需要通过类提供的公有方法进行访问
14.
构造方法
(1)格式:public Student(){ }
(2)当类中没有写构造方法时,系统会自动提供一个无参的构造方法
(3)当类中写了构造方法时,系统将不会提供无参构造,如果需要使用,需手动编写
(4)建议无论是否使用无参构造,都手动书写无参的构造方法
15.
API(Application Programming Interface):应用程序编程接口
java API : 指的就是JDK中提供的各种功能的java类
16
Random r = new Random();
int a = r.nextInt(10);//产生一个int类型的包含0不包含10[0,9]的随机数.
17.
使用Scanner对象从键盘录入字符串
String line = sc.nextLine(); //ctrl+alt+v是自动生成返回值接收对象的快捷键