昨天晚上,熬夜到4点才弄完共享单车的项目,算全是自己写的,今天开始学习集合
1、
System.out.println(student);
// System.out.println(student.get(0));
// System.out.println(student.get(1));
// System.out.println(student.get(2));
// for(int i=0;i<stuNum;i++){
// System.out.println("请输入第"+(i+1)+"学生姓名");
// String stuName=input.next();
//
// System.out.println("请输入第"+(i+1)+"学生年龄");
// int stuAge=input.nextInt();
// int j=
// Student =
//
// array.add(stuName);
//
我卡在这里了,就是 创建以 i 遍历递增为名字的对象,我弄不出来
老师直接用调用方法规避了这个问题,黑马的老师厉害
2、switch 里面能跟字符串
3、JVM 虚拟机退出
System.exit(0);
4、一个猫继承了动物类和接口,在使用的时候直接用Cat对象,因为猫里面就什么都有了,不用多态
我们在项目里面 会有接口类 和 抽象类 ,但是我们在具体使用的时候 使用的是这个具体 的子类(或者叫实现类),因为它里面有最多的方法、
5、抽象类是对事物的抽象,接口是对行为的抽象
比如开门和关门就是抽象类
报警就是接口
6、类名作为形参和返回值
类名作为形参,其实要的是该类的对象
类名作为返回值,返回的是该类的对象
抽象类名作为形参和返回值
方法的形参是抽象类名,其实需要的是该抽象类的子类对象
方法的返回值是抽象类名,其实返回的是该抽象类的子类对象
就是多态
接口类名作为形参和返回值
方法的形参是抽象类名,其实需要的是该接口的实现类对象
方法的返回值是抽象类名,其实返回的是该接口的实现类对象
就是多态
7、内部类
内部类可以直接访问外部类的东西
外部类想访问内部类需要常见一个内部类的对象,去调用
调用的时候要创建方法
8、成员内部类
是为了把内部类的内容隐藏起来,不想让外部看到
一般内部类用 private 在外部类创建内部类的对象,创建调用方法
在Demo里面创建外部对象,就可以用内部对象的东西了
局部内部类
在外部类的方法里面创建内部类
局部内部类是在方法中定义的类,所以外界是无法直接使用的,需要在方法内部创建对象并使用
该类可以直接访问外部类的成员,也可以访问方法内的局部变量
匿名内部类
是局部内部类的一种形式
前提:存在一个类或者接口,这里的类可以是具体类也可以是抽象类,抽象类居多
格式
new 类名或者接口名(){
重写方法
}
//比如
new inter(){
public void show(){
}
}
本质:是一个继承了该类或者实现该接口的子类匿名对象
记住 匿名内部类 是一个对象,只不过这个对象没有名字
所以它可以去调自己的方法
1、可以看成一个接口的实现类对象,那就可以用多态的形式去写
接口 名字=匿名内部类
2、如果是继承的话,就是继承了该类的子类
匿名内部类好方便,之后做大作业要用一次
jo.method(new JumpInter() {
@Override
public void jump() {
System.out.println("狗可以跳高了,因为狗跳高只用一次,所以用匿名内部类写,就不用写一个类去实现接口这么费劲了");
}
});