java接口有没有构造方法
java中的构造⽅法set,get⽅法
标题001.构造⽅法(Constructor)
构造⽅法的作⽤
给对象的数据和属性进⾏初始化
构造⽅法的格式特点
⽅法名与类名相同(⼤⼩写也⼀致)
没有返回值类型
没有具体的返回值return;
package hyq.day07;
/**
* @Author: 强啊
* @CreateTime: 2018-12-10 19:42
*/
public class day07demo1Constructor {        //Constructor构造;
public static void main(String[] args){
person p = new person();            //构造⽅法在创建对象的时候,系统就⾃动调⽤了构造⽅法
//p.person;                        // 构造⽅法不能⽤对象调⽤
p.show();
}
}
class person{
private String name;
private int age;
//构造⽅法
public person(){
//System.out.println("Hello world");
//return ;                                  //构造⽅法也是有return语句的
name = "张三";
age = 23;
}
public void show(){
System.out.println(name + "...." + age);
}
}
标题002构造⽅法的重载以及注意事项
1.重载:⽅法相同,与返回值类型⽆关(构造⽅法没有返回值),只看参数列表。
2.如果我们没有定义构造⽅法,系统将⾃动提供⼀个⽆参构造⽅法
3.如果我们定义了构造⽅法,系统将不再提供默认的构造⽅法。如果这个时候我们想使⽤⽆参构造⽅法,就必须⾃⼰给出。
package hyq.day07;
/**
* @Author: 强啊
* @CreateTime: 2018-12-10 20:10
*/
/*A:案例演⽰
*构造⽅法的重载
*重载:⽅法名相同,与返回值类型⽆关(构造⽅法没有返回值),只看参数列表
*B:构造⽅法注意事项
*a:如果我们没有给出构造⽅法,系统将⾃动提供⼀个⽆参构造⽅法。
*b:如果我们给出了构造⽅法,系统将不再提供默认的⽆参构造⽅法。
*注意:这个时候,如果我们还想使⽤⽆参构造⽅法,就必须⾃⼰给出。建议永远⾃⼰给出⽆参构造⽅法*/ public class day07demo2 {
public static void main(String[] args) {
person2 p2 = new person2();
p2.show();
System.out.println("-----------------------");
person2 p3 = new person2("张三", 230);
p3.show();
person2 p4 = new person2("李四", 24);
p4.show();
}
}
class person2 {
private String name;
private int age;
public person2() {
System.out.println("空参构造⽅法");
}
public person2(String name, int age) {
this.name = name;
this.age = age;
System.out.println("有参数的构造⽅法");
}
public void show() {
System.out.println(name + "..." + age);
}
}
有参构造的好处:可以动态的给参数进⾏赋值
003
setXxx()⽅法:修改属性值 ,此⽅法更为灵活,在开发中多⽤构造⽅法:给对象中的属性进⾏初始化
package hyq.day07;
/**
* @Author: 强啊
* @CreateTime: 2018-12-10 20:29
*/
public class day07demo3 {
public static void main(String[] args) {
person3 p = new person3("张三",23);      //有参构造创建对象
System.out.Name() + "-------" + p.getAge());
System.out.println(p);
System.out.println("---------------------");
p = new person3("张四",23);                  //这不是改名,是“杀对象”。(将原来的对象变成垃圾)        System.out.Name() + "-------" + p.getAge());
System.out.println(p);
System.out.println("---------------------------");
person3 p1 = new person3();                    //空参构造创建对象
p1.setName("李四");
p1.setAge(24);
System.out.Name() + "---------" + p1.getAge());
System.out.println(p1);
}
}
class person3 {
private String name;        //姓名
private int age;            //年龄
public person3() {          //空参构造
}
public person3(String name, int age) {      //有参构造
this.name = name;
this.age = age;
}
public void setName(String name) {            //设置姓名
this.name = name;
}
public String getName() {                    //获取姓名
return name;
}
public void setAge(int age) {                //设置年龄
this.age = age;
}
public int getAge() {                        //获取年龄
return age;
}
}
004⼀个标准学⽣类的代码及测试
A:案例演⽰
完善⼀下我们的学⽣的类
B:给成员变量赋值:
a:setXxx()⽅法
b:构造⽅法
C:输出成员变量值的⽅式:
a:通过getXxx()分别获取然后拼接
b:通过调⽤show()⽅法搞定

版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系QQ:729038198,我们将在24小时内删除。