对象的行为
1.方法在执行时候,有3中情况。
- 方法返回一个值
- 方法不返回一个值
- 方法抛出一个异常给方法的调用者
2.封装的含义:
1,类的组装。2,信息的隐藏(包括访问修饰符,方法的定义)
3.多态
相同的行为,不同的实现。重载也是多态的一种。
4.重载
是指:在同一个类中,具有多个同名方法,但是参数列表不同。(参数列表:1.参数的个数。2.参数的类型。3.参数的顺序)
//方法的重载
//重载是多态的一种体现,其含义为:相同的行为,不同的实现
//重载是指:在同一个类当中,具有多个同名方法,但是参数列表不同。
//参数列表的不同:1、参数个数不同;2、参数类型不同;3、参数顺序不同
public class Person {
public void fight() {
System.out.println("看我来一套广播体操!");
}
public void fight(Knife knife) {
System.out.println("看我新东方厨师的威力!");
}
public void fight(String weapon) {
System.out.println("我用的是" + weapon);
}
public void fight(String name,Knife k){
}
public void fight(Knife k,String name){
}
5.构造方法/构造器
默认构造方法: public 类名(){}
JavaBean规范:1.必须要有公共无参构造。2.必须为属性提供符合命名规范的get/set方法。
为满足JavaBean规范,一旦书写了有参构造,首先补充公共无参构造。
public class Student {
//属性
private String name;
private int age = 18;
//构造方法
//语法特征:方法名与类名保持一致,没有返回类型
//构造方法作用:产生对象(new)
//构造方法的执行步骤:1、划分空间;2、在该空间划分属性;3、对属性进行初始化
// 4、执行我们在构造方法里面书写的代码
//如果程序员不书写构造方法,编译器会默认生成一个公共无参的构造
//一旦程序员书写了一个构造,编译器不会生产默认构造了。
//为满足JavaBean规范,一旦书写带参构造,首先补充公共无参构造
public Student(){
System.out.println("产生一个Student对象");
}
public Student(String name){
this();
this.name = name;
}
public Student(String name, int age) {
this(name);
this.age = age;
}
//行为
public String getName() {
return name;
}
public void setName(String name) {
this.name = name;
}
public int getAge() {
return age;
}
public void setAge(int age) {
this.age = age;
}
public void study(){
System.out.println(this.name + "说:Good Good Study,Day Day Up!");
}
6.this.和this()的区别
this. :1.代表当前对象;2.用法(this.属性;this.方法)。3.位置:本类任意方法的任意位置
this():1.调用本类的其他构造;2.用法(this();this(参数))。3.位置:只能写在构造方法的第一句。