版权声明:Genius https://blog.csdn.net/weixin_41987706/article/details/91430502
夜光序言:
我喜欢站在一片山崖上看着匍匐在自己脚下的一幅一幅奢侈明亮的青春泪流满面。
正文:Java的非访问控制符
static 修饰符
abstract修饰符
final修饰符
其它修饰符
class Reader //定义一个名为Reader的类
{
int readerID; //读者编号
String readerName; //读者姓名
String readerPwd; //读者密码
static int nextReaderID; //用static修饰的类变量,用来产生读者编号
static //静态初始化器
{
nextReaderID = 1000; //设读者起始编号为1000
}
public Reader() //构造方法
{
readerID=nextReaderID++; //读者编号自增加
readerName=""; //默认读者为匿名
readerPwd="1111111111"; //默认密码为6666
}
}
public class Circle extends Shapes //继承于Shapes的子类:圆形类
{
protected int radius; //圆的半径
static final double pi=3.14; // 常数:π
public Circle(int r) //构造方法,带1个参数:半径
{
radius=r;
}
public void setCircumference() //重写计算周长的父类方法
{
circumference=2*pi*radius; //圆周长=2πr
}
public void setArea() //重写计算面积的父类方法
{
area=pi*radius*radius; //圆面积=πr^2
}
public String toString()
{
return ""+area;
}
}
public class Triangle extends Shapes //继承于Shapes的子类:三角形
{
protected int sidea; //三角形的第1条边
protected int sideb; //三角形的第2条边
protected int sidec; //三角形的第3条边
public Triangle(int a,int b,int c) //构造方法,带2个参数:3条边
{
sidea=a;
sideb=b;
sidec=c;
}
public void setCircumference() //重写计算周长的父类方法
{
circumference=sidea+sideb+sidec;
}
public void setArea() //重写计算面积的父类方法
{
double p=this.getCircumference()/2;
area=Math.sqrt(p*(p-sidea)*(p-sideb)*(p-sidec));//秦九韶公式
}
}
public class TestShapes
{
public static void main(String args[])
{
System.out.println("Shapes类操作情况如下:");
Circle c= new Circle(5); //测试圆形
c.setCircumference();
c.setArea();
System.out.println("\n圆: Circle(5),周长=" +c.getCircumference()+" 面积="+c.getArea());
Rectangle r= new Rectangle(5,4); //测试矩形
r.setCircumference();
r.setArea();
System.out.println("\n矩形: Rectangle(5,4),周长=" +r.getCircumference()+" 面积="+r.getArea());
Triangle t= new Triangle(8,8,8); //测试三角形
t.setCircumference();
t.setArea();
System.out.println("\n三角形: Triangle(8,8,8),周长="+t.getCircumference()+" 面积="+t.getArea()+"\n");
}
}