封装 重载 构造方法

作者在 2017-07-14 15:13:20 发布以下内容

修改属性的访问权限来限制对属性的访问;并为每一个属性创建一对取值方法和赋值方法,用于对这些属性的访问

private

方法的重载:一个类中定义多个相同名字不同参数的多个方法,调用时会根据不同的参数选择相应的方法

package lianxi;
public class adsadd {
public static void main(String[]args){
compare kk = new compare();
kk.max(12,13);
}
}
class compare{
public void max(int a,int b){
System.out.println(a>b? a:b);
}
public void max(double a,double b){
System.out.println(a>b? a:b);
}
}
构造方法(构造函数)(一个类中可存在多个)

注意:你自己定义了一个有参数的构造方法系统就不在给你无参的构造方法,此时 new的时候必须给定参数,不给 报错;可以自己在定义一个无参构造方法

java的构造函数其实很简单。
一个类 被实例化 也就是被new的时候 最先执行的是 构造函数,如果你有留心。你会发现很多类里面根本没有写构造函数。
在java类中,如果不显示声明构造函数,JVM 会给该类一个默认的构造函数。一个类 可以有多个构造函数。构造函数的主要作用 一是用来实例化该类。二是 让该类实例化的时候执行哪些方法,初始化哪些属性。当一个类声明了构造函数以后,JVM 是不会再给该类分配默认的构造函数。
比如一个实体类
public class entity{
      private int id;
      private String userName;
     get...set..方法
}
如果这样写该类就是默认的构造函数。该类实例化的时候 id 和 username 就是默认值 即 id=0,username=null.
如果在里面加入这样一个方法
public entity(int id,String userName){
     调用get..set..
}
如果这样写 该类实例化的时候 必须给出 id  和username参数。 JVM不会再给这个类默认构造函数
你也可以理解成 在没有给构造函数的时候 JVM 给你的类加了一个这样的函数
public entity(){//public 可写可不写
}
其实构造函数是用来对一个类以及变量进行实例化。


java 笔记 | 阅读 545 次
文章评论,共0条
游客请输入验证码
文章归档