JSD
1. 面向对象
1.1 package和import:
- package:声明包
- 作用:为了避免类的命名冲突
- 同包中的类不能同名,但不同包中的类可以同名
- 类的全称:包名.类名,包名常常有层次结构
- 建议:包名所有字母都小写
- import:导入类
- 同包中的类可以直接访问,但不能包中的类不能直接访问,若想访问:
- 先import导入类再访问类------建议
- 类的全称----------------------------太繁琐,不建议
- 同包中的类可以直接访问,但不能包中的类不能直接访问,若想访问:
1.2.访问控制修饰符:-----------保护数据的安全
- public:公开的,任何类
- private:私有的,本类
- protected:受保护的,本类、派生类、同包类
- 默认的:什么也不写,本类、同包类--------------------------------不建议
- 注意:
- 1. 类的访问权限只能是public或默认的
- 2. 类中成员的访问权限如上4种都可以
package ooday05;//访问控制修饰符的演示public class Aoo {public int a; //任何类protected int b; //本类、派生类、同包类int c; //本类、同包类private int d; //本类void show(){a = 1;b = 2;c = 3;d = 4;}}class Boo{ //---------------------演示privatevoid show(){Aoo o = new Aoo();o.a = 1;o.b = 2;o.c = 3;//o.d = 4; //编译错误}}package ooday05_vis;import ooday05.Aoo;public class Coo { //--------------演示同包的void show(){Aoo o = new Aoo();o.a = 1;//o.b = 2; //编译错误//o.c = 3; //编译错误//o.d = 4; //编译错误}}class Doo extends Aoo{ //跨包继承------演示protectedvoid show(){a = 1;b = 2;//c = 3; //编译错误//d = 4; //编译错误}}
1.3final:最终的、不可改变的----------单独应用几率低
- 修饰变量:变量不能被改变
class Eoo{final int num = 5;void show(){//num = 55; //编译错误,final的变量不能被改变}}
- 修饰方法:方法不能被重写
//演示final修饰方法class Foo {final void show(){}void test(){}}class Goo extends Foo{//void show(){} //编译错误,final的方法不能被重写void test(){}}
- 修饰类:类不能被继承
//演示final修饰类final class Hoo{}//class Ioo extends Hoo{} //编译错误,final的类不能被继承class Joo{}final class Koo extends Joo{} //正确,不能当老爸,但能当儿子
1.4static:静态的
- 静态变量:
- 由static修饰
- 属于类,存储在方法区中,只有一份
- 常常通过类名点来访问
- 何时用:所有对象所共享的数据(图片、音频、视频等)
class Loo{int a; //实例变量static int b; //静态变量Loo(){a++;b++;}void show(){System.out.println("a="+a+"
更多推荐
JSD
发布评论