javase2

接口:
定义格式:
public interface 接口名 {
抽象方法1;
抽象方法2;
抽象方法3;}
类实现接口:
类实现接口。实现的动作类似于继承,实现使用implements.
格式:
class 类 implements 接口 {
重写接口中方法
}

接口中成员的特点:
1、接口中可以定义变量,但是变量必须有固定的修饰符修饰,public static final 所以接口中的变量也称之为常量,其值不能改变。后面我们会讲解static与final关键字
2、接口中可以定义方法,方法也有固定的修饰符,public abstract
3、接口不可以创建对象。
4、子类必须覆盖掉接口中所有的抽象方法后,子类才可以实例化。否则子类是一个抽象类。

interface Demo {
 ///定义一个名称为Demo的接口。
 	public static final int NUM = 3;// NUM的值不能改变
 		public abstract void show1();
 			public abstract void show2();
 		} 
 	//定义子类去覆盖接口中的方法。类与接口之间的关系是 实现。通过 关键字 implementsclass
 		 DemoImpl implements Demo { 
 		 //子类实现Demo接口。	
 		 //重写接口中的方法。
 		 	public void show1(){}	
 		 	public void show2(){}
 		 	}

接口的多实现:
了解了接口的特点后,那么想想为什么要定义接口,使用抽象类描述也没有问题,接口到底有啥用呢?接口最重要的体现:解决多继承的弊端。将多继承这种机制在java中通过多实现完成了

interface Fu1{	
void show1();
}

interface Fu2{
	void show2();
	}

class Zi implements Fu1,Fu2// 多实现。同时实现多个接口。
	{	
	public void show1(){}	
	public void show2(){}
	}

怎么解决多继承的弊端呢?
弊端:多继承时,当多个父类中有相同功能时,子类调用会产生不确定性。其实核心原因就是在于多继承父类中功能有主体,而导致调用运行时,不确定运行哪个主体内容。
为什么多实现能解决了呢?
因为接口中的功能都没有方法体,由子类来明确

类继承同时实现类接口:子类通过继承父类扩展功能,通过继承扩展的功能都是子类应该具备的基础功能。如果子类想要继续扩展其他类中的功能呢?这时通过实现接口来完成。

class Fu {	
public void show(){}
}

interface Inter {
	pulbic abstract void show1();
	}
	
	class Zi extends Fu implements Inter {	
	public void show1() {	}
	}

多态
多态的前提是必须有子父类关系或者类实现接口关系,否则无法完成多态。在使用多态后的父类引用变量调用方法时,会调用子类重写后的方法。
格式:

父类类型    变量名 =  new 子类类型;
变量名。方法名;

instanceof关键字:
我们可以通过instanceof关键字来判断某个对象是否属于某种数据类型。如学生的对象属于学生类,学生的对象也属于人类。
使用格式:boolean b = 对象 instanceof 数据类型;

多态向上转型,向下转型。

构造方法:

修饰符 构造方法名(参数列表)0{
}
构造方法的体现:
1 构造方法没有返回值类型。也不需要写返回值。因为它是为构建对象的,对象创建完,方法就执行结束。
2构造方法名称必须和类型保持一致。
3构造方法没有具体的返回值。

class Person {	
// Person的成员属性age和name	
private int age;	
private String name; 	
// Person的构造方法,拥有参数列表	
Person(int a, String nm) {	
	// 接受到创建对象时传递进来的值,将值赋给成员属性	
		age = a;	
		name = nm;	
		}
	}

理解构造方法的格式和基本功能之后,现在就要研究构造方法是怎么执行的呢?在创建对象的时候是如何初始化的呢? 构造方法是专门用来创建对象的,也就是在new对象时要调用构造方法。现在来看看如何调用构造方法。

class Person {	
// Person的成员属性age和name	
private int age;	
private String name; 	
// Person的构造方法,拥有参数列表
Person(int a, String nm) {	
	// 接受到创建对象时传递进来的值,将值赋给成员属性	
	age = a;		
	name = nm;	
	} 	
	public void speak() {	
	System.out.println("name=" + name + ",age=" + age);
		}
} 

、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、
	class PersonDemo {
	public static void main(String[] args) {
		// 创建Person对象,并明确对象的年龄和姓名	
		Person p2 = new Person(23, "张三");	
		p2.speak();	
								
			}
		}

this关键字:构造方法之间的调用。
格式:
this(参数列表);
super关键字

final关键字

static关键字

内部类 成员和局部内部类 还有匿名内部类

public 权限修饰符,公共访问, 类,方法,成员变量
protected 权限修饰符,受保护访问, 方法,成员变量
默认什么也不写 也是一种权限修饰符,默认访问, 类,方法,成员变量
private 权限修饰符,私有访问, 方法,成员变量l static 静态修饰符 方法,成员变量
final 最终修饰符 类,方法,成员变量,局部变量l abstract 抽象修饰符 类 ,方法

正则表达式

各种类,及API

2完。。。。。。。。。。。。。。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值