第二次考试的知识点总结(不全面)
创建对象内存的图解
以.java文件结尾的文件通过编译之后会生成.class文件
for循环求总和的时候细心(看他公式)
case穿透,如果case没有break。则执行default的语句
一个&和两个&&的区别
//区分& 与 &&
//相同点1:& 与 && 的运算结果相同
//相同点2:当符号左边是true时,二者都会执行符号右边的运算
//不同点:当符号左边是false时,&继续执行符号右边的运算。&&不再执行符号右边的运
==和.equals()
==基本数据类型比较的是值,引用类型比较的是内存地址
.equals(),比较的是字符串内容
文件中import,class,和package出现的顺序
先package然后import然后class
变量名的命名规范:
多个单词组成是第一个单词的首字母小写从第二个单词开始每个的首字母大写
常量的话每个单词的都是大写
浮点数强转为整数的时候,小数点后的省略掉(精度损失)
二维数组的声明格式(静动太初始化)
java类名必须和文件一致
变量必须先定义赋值初始化才能使用
++在前和在后的区别(--一样),++在前先进行++运算在++,++在后先进性运算,运算后在进行++;
(static)静态只能掉静态不能掉非静态,非静态可以调所有
switch 语句中的变量类型可以是: byte、short、int 或者 char。
从 Java SE 7 开始,switch 支持字符串 String 类型了,同时 case 标签必须为字符串常量或字面量。
成员变量和局部变量的区别
不同 | 成员变量 | 局部变量 |
---|---|---|
类中位置 | 类中方法外 | 方法内部,方法声明上 |
作用范围 | 类中 | 方法中 |
内存中位置不同 | 堆内存 | 栈内存 |
声明周期 | 随着对象的存在而存在,对象的消失而消失 | 随着方法的调用而存在,方法的调用完毕而消失 |
初始化值不同 | 有默认初始化值 | 没有初始化值,必须先定义,赋值才能使用 |
修饰符的不同 | 声明成员变量时,可以使用权限修饰符 | 不可以使用权限修饰符 |
构造方法的理解 |
创建对象,初始化对象信息。
构造方法名称必须和所在的类名完全一样,就连大小写一样
构造方法不用声明返回值类型,连void也不需要
构造方法不能用return一个具体的返回值
如果定义类是没有显示定义构造方法,系统会提供一个默认的无参构造方法
一旦自定义了一个构造方法,那么编译器将会收回默认提供的构造方法
构造方法可以重载;方法名称相同,参数列表不同
static的理解
static关键字,可以修饰成员变量,和成员方法。被修饰的成员是【属于类】的
当成员变量被static修饰,该变量就称为【类变量】。该类的每一个对象都【共享】同一个类变量的值。任何对象都可以更改类变量的值。
当成员方法一旦被static关键字修饰时,该方法称为【类方法】
它优先于对象存在,所以可以被类的所有对象所共享。
随着类的加载而加载,而且只会执行一次,优先于main方法和构造方法加载
错题总结没有注意细节,优先选择写会的最后的时间思考大题节约时间,及时复习
大处着眼,小处着手。
透过问题看本质
逆行思维反证法,