//本类用作构造函数的入门案例
class TestConstructor{
main{
//4.在main中创建对象进行测试
//1.一个类会默认存在无参构造,每次
new(实例化)对象时都会自动调用构造方法。
Person p = new Person();
Person p2 = new Person(孙行者);
//全参构造不仅可以用来创建对象,还可以给对象的属性直接赋值。
println(p.age);
p.eat();
p.Person//不能主动调用,是被动地。
}
}
//1.创建类用来描述人这一类事物
class Person{
//2.定义Person类的属性
String name;//姓名
int age;//年龄
String address;//地址
//5.创建Person类的无参构造
//2.构造方法的格式:与类同名且没有返回值类型的方法。
//方法的格式:修饰符 返回值类型 方法名 (参数列表) {方法体}
public Person(){
println("我是Person类的无参构造");
}
//3.方法的重载:在同一个类中存在多个方法,方法名相同但参数列表不同的现象
//4.构造函数也存在重载的现象
public Person(String name){
println("我是Person类的含参构造"+name);
//自动生成全参构造::右键---》Source---》Generace Constructor using Fields
public Person(String name,int age,String address){
println(我是全参构造);//添加了一句打印语句
super();
this.name = name;
this.age = age;
this.address = address;
}
}
//3.定义Parson类的功能
public void eat(){
println("干饭");
}
}
//本来类用于演示方法的重载
public class OverrideDemo{
c.eat();
c.eat(哗哗);
c.eat(长高高,5);
}
class Cat{
public void eat(){println(吃啥东西都行);}
public void eat(String s){println(吃s的东西)};
public void eat(String s,int n){println(吃s的东西几罐);}
}