1.常见的修饰符
(1)分类:
- 权限修饰符:private ,默认,protect,public;
- 状态修饰符:static,final
- 抽象修饰符:abstract;
(2)常见的类及其组成的修饰
- 类: 默认,public,final,abstract;
----常用:public - 成员变量:private,默认,protected,public,static,final
----常用:private - 构造方法:private,默认,protected,public,static,final
----常用:public - 成员方法:private,默认,protected,public,static,final,abstract
----常用:public - 另外比较常见:
public static final int X = 10;
public static void show(){}
public final void show(){}
public abstract void show();
权限修饰符范围
- | 本类 | 同一个包下 | 不同包下的子类 | 不同包下的无关类 |
---|---|---|---|---|
private | Y | |||
默认 | Y | Y | ||
protect | Y | Y | Y | |
public | Y | Y | Y | Y |
权限的意思是,是否可以调用方法。例如你写个private方法,你在其他类中调用方法是无法调用的。代码提示里没有,强行写出会提示你此方法被private修饰。
设计方法时,判断是否需要返回值
- 你使用这个方法后需要对方法执行完毕后的值进行其他操作的就需要带返回值,如果只是执行方法,方法执行完毕后不对执行完的内容进行操作,就不需要写返回值。
int a = 1;
String b = “helloword”;
int 和String 称为数据类型 ,全称为形式参数或实际参数的数据类型;
a和b 称为形参,全称叫形式参数;
1和"helloword" 称为实参,全称叫实际参数;
java 中的参数传递问题:java中只有值传递
基本类型:形式参数的改变对实际参数没有影响;传递的是数值
引用类型:形式参数的改变直接影响实际参数; 传递的是地址值
重载和重写
重写:在子类中,出现和父类相同的方法声明的现象。
重载:在同一类中,出现的方法名相同,参数列表不同的现象。与返回值无关。(就是说 你有没有返回值,返回值类型是不是变了,都没有关系)
Java中的三种不同变量的区别,如下表所示
- | 概念 | 默认值 | 其他 |
---|---|---|---|
类变量 | 也叫静态变量,是类中独立于方法之外的变量 | 有默认初始值,系统自动初始化。如boolean默认为false. | 可以被public,protect,private,static等修饰符修饰 |
成员变量 | 也叫实例变量,也是独立于方法之外的变量没有static修饰 | 没有默认值,必须进行初始化 | 可以被public,protect,private,static等修饰符修饰 |
局部变量 | 类的方法中的变量 | 没有默认值,必须进行初始化。 | 不可以被修饰符修饰 |
一个类只能extends一个父类,但可以implements多个接口。
一个接口则可以同时extends多个接口,却不能implements任何接口。(spring框架中ApplicationContext接口)
内存溢出 out of memory,是指程序在申请内存时,没有足够的内存空间供其使用,出现out of memory;
内存泄露 memory leak,是指程序在申请内存后,无法释放已申请的内存空间,一次内存泄露危害可以忽略,但内存泄露堆积后果很严重,无论多少内存,迟早会被占光。
溢出是指 空间 不够我用
泄漏 应该是说内存一直被暂用 没有被合理的回收
泄漏 会造成溢出