1.带包类的编译和运行
将java文件中的元素位置顺序
package -- import -- class
package语句必须作为java文件中的第一行非注释语句.
自动建包:
编译:javac -d . 类名.java
运行:java 带包名的类名
不同包下类的调用和导包
例如:在com.csdn包下的类Test 使用cn.itcast包下的类Demo
1)要先编译 cn.itcast包下的Demo类.
2)在Test类里面
可以使用Demo的全路径类名.
第二种方法:
导包:import cn.itcast.Demo;
2.权限修饰符
public 是最大的权限
protected
默认
private
一般使用规则:
一个java文件中只写一个类,并且public修饰
成员变量 private
成员方法 public
构造方法 public (工具类和单例模式除外用private)
如果发现api的一个类没有构造方法
1)所有方法静态,使用类名调用
2)它提供了公共的方法,返回了本类的对象.
3.内部类:
一个类定义到另一个类里面
访问特点:
1)内部类可以直接方法外部类中的成员,包括私有成员
)外部类要访问内部类中的成员必须要建立内部类的对象.
4.内部类及使用
分类: 成员内部类
局部内部类
使用:
内部类使用格式:
外部类名.内部类名 变量名=new 外部类名().new 内部类类名();
成员内部类
修饰符:
private -- 为了安全.
static -- 为了方便
格式:外部类名.内部类名 变量名=new 外部类名.内部类名();
局部内部类:处于堆内存里面
局部内部类访问局部变量,该变量必须被final关键字修饰.
5.匿名内部类
没有名字的局部内部类
前提:必须有一个类,抽象类或者接口
格式:
new 类名或者接口名()
{
//重写父类或者接口中的方法
//自定义方法
};
理解:
匿名内部类的本质其实是继承了类或者实现了接口的匿名子类对象.
应用场景:
方法接受的形式参数是抽象类或者接口的时候,就可以考虑采用匿名内部类.
也就是说: 把定义实现类和创建实现类的对象放在一块完成了.
|
|