Java学习——Java语言类的特性

类的私有成员和公共成员

私有成员

如果在类的成员声明的前面加上修饰符private,则就无法从类的外部访问到该类内部的成员,而只能被该类自身访问和修改,而不能被任何类(包括子类)获取或引用,因而达到了对数据最高级别保护的目的。

公共成员

如果在类的成员声明的前面加上修饰符public,则表示该成员可以被所有其他的类所访问。由于public修饰符会造成安全性和数据封装性的下降,所以一般应减少公共成员的使用。

缺省访问控制符

缺省访问控制符表示这个成员只能被同一个包(类库)中的类所访问和调用。

方法的重载

这些方法使用相同的名字,但参数的个数或类型或顺序不同。

package day01;
class Cylinder{
    private double radius;
    private int height;
    private double pi=3.14;
    private String color;
    public double setCylinder(double r,int h){
        radius=r;
        height=h;
        return r+h;
    }
    public void setCylinder(String str){
        color=str;
    }
    public void show(){
        System.out.println("圆柱的颜色为:"+color);
    }
    double area(){
        return pi*radius*radius;
    }
    double volume(){
        return area()*height;
    }
}
public class test13 {
    public static void main(String[] args){
        double r_h;
        Cylinder volu=new Cylinder();
        r_h=volu.setCylinder(2.5,5);
        volu.setCylinder("红色");
        System.out.println("圆柱体半径与高的和:"+r_h);
        System.out.println("圆柱体底面积:"+volu.area());
        System.out.println("圆柱体体积:"+volu.volume());
        volu.show();
    }
}

构造方法

构造方法不能用void修饰。在这里插入图片描述
构造方法包括无参构造方法和有参构造方法,构造方法也有重载,和前面的类似,也可以用一个构造方法来调用另外一个构造方法。还有公共的构造方法和私有的构造方法。
如:从一个构造方法调用另一个构造方法

package day01;
class Cylinder
{
   private double radius;
   private int height;
   private double pi=3.14;
   String color;
   public Cylinder()
   {
       this(2.5,5,"红色");
       System.out.println("无参构造方法被调用了");
   }
   public Cylinder(double r,int h,String str)
   {
       System.out.println("有参方法被调用了");
       radius=r;
       height=h;
       color=str;
   }
   public void show()
   {
       System.out.println("圆柱的底半径为:"+radius);
       System.out.println("圆柱的高为:"+height);
       System.out.println("圆柱的颜色为:"+color);
   }
   double area()
   {
       return pi*radius*radius;
   }
   double volume()
   {
       return area()*height;
   }
}
public class test10 {
    public static void main(String[] args){
        Cylinder volu=new Cylinder();
        System.out.println("圆柱的底面积为:"+volu.area());
        System.out.println("圆柱的体积为:"+volu.volume());
        volu.show();
    }
}

静态变量

对于类的任何一个具体对象而言,静态变量是一个公共的存储单元,类的任何一个对象访问它时,取到的都是一个相同的数值。(不常用)

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值