java_2017.11.1_继承 接口
来源:互联网 发布:某单位网络拓扑结构图 编辑:程序博客网 时间:2024/06/03 06:14
1.抽象类
定义一个抽象类Shape,包含求面积area和周长perimeter的两个函数。定义圆Circle类,继承Shape类。定义三角形Triangle,继承Shape类。定义长方形类Square,继承Shape类。并完成以上类的测试。
1.Shape.java
package work02;public abstract class Shape {abstract double area();abstract double perimeter();}
2.Circle01.java
package work02;public class Circle01 extends Shape {double r;public Circle01(double r) {this.r = r;}public double area() {return Math.PI * r * r;}public double perimeter() {return 2 * Math.PI * r;}public String toString() {return "圆形面积:" + area() + " 圆形周长:" + perimeter();}}
3.Triangle.java
package work02;public class Triangle extends Shape {public double len;public Triangle(double len) {super();this.len = len;}public double area() {return Math.sqrt(3) * len * len / 4;}double perimeter() {return 3 * len;}public String toString() {return "正三角形面积:" + area() + " 正三角形周长:" + perimeter();}}
package work02;public class Square extends Shape {double x, y;public Square(double x, double y) {this.x = x;this.y = y;}double area() {return x * y;}double perimeter() {return 2 * (x + y);}public String toString() {return "长方形面积:" + area() + " 长方形周长:" + perimeter();}}
5.ShapeTest.java
package work02;public class ShapeTest {public static void main(String[]args){Circle01 ce=new Circle01(2);System.out.println(ce);Triangle tr=new Triangle(4);System.out.println(tr);Square sq=new Square(2,3);System.out.println(sq);}}
2.接口
定义一个Shape接口,包含求面积和周长的两个函数。定义一个坐标类Coordinates,包含两个成员变量X坐标和Y坐标。定义圆Circle类,继承Coordinates并实现Shape接口。定义三角形Triangle,继承Coordinates并实现Shape接口。定义长方形类Square,继承Coordinates并实现Shape接口。并完成以上类的测试。
1.Shape.java
package work02;interface Shape {public double area();public double perimeter();}
2.Coordinates.java
package work02;public class Coordinates {public double x,y;public Coordinates(double x, double y) {super();this.x = x;this.y = y;}}
3.Circle01.java
package work02;public class Circle01 extends Coordinates implements Shape {public double r;public Circle01(double x,double y,double r) {super(x,y);this.r = r;}public double area() {return Math.PI * r * r;}public double perimeter() {return 2 * Math.PI * r;}public String toString() {return "圆形面积:" + area() + " 圆形周长:" + perimeter();}}
4.Triangle.java
package work02;public class Triangle extends Coordinates implements Shape {public double len;public Triangle(double x,double y,double len) {super(x,y);this.len = len;}public double area() {return Math.sqrt(3) * len * len / 4;}public double perimeter() {return 3 * len;}public String toString() {return "正三角形面积:" + area() + " 正三角形周长:" + perimeter();}}
5.Square.java
package work02;public class Square extends Coordinates implements Shape {public Square(double x, double y) {super(x,y);//this.x = x;//this.y = y;}public double area() {return x * y;}public double perimeter() {return 2 * (x + y);}public String toString() {return "长方形面积:" + area() + " 长方形周长:" + perimeter();}}
6.ShapeTest.java
package work02;public class ShapeTest {public static void main(String[]args){Shape ce=new Circle01(0,0,2);System.out.println(ce);Shape tr=new Triangle(0,0,4);System.out.println(tr);Shape sq=new Square(2,3);System.out.println(sq);}}/*圆形面积:12.566370614359172 圆形周长:12.566370614359172正三角形面积:6.928203230275509 正三角形周长:12.0长方形面积:6.0 长方形周长:10.0*/
阅读全文
0 0
- java_2017.11.1_继承 接口
- java_2017.10.30_行星的转动
- 黑马程序员_继承、接口、多态
- 面向对象_继承、抽象类、接口
- 黑马程序员_继承、接口、final、abstrct
- 黑马程序员_08_继承_接口
- 黑马程序员_java 继承_抽象类_接口
- java_2017.9.25
- Java_2017.10.09
- java_2017.9.18
- java_2017.10.10
- 黑马程序员_面对对象_继承_抽象类_接口
- 学习笔记_毕向东 Java_继承_抽象类_接口_多态 2014.7.13
- 黑马程序员_面向对象之继承和接口
- 黑马程序员_五、继承、多态、抽象类及接口
- 黑马程序员_JAVA基础_继承,抽象和接口
- 黑马程序员_继承体系和接口体系
- Java学习第六_八天:面向对象__继承_接口_多态
- Ctrlbox Project v2.3项目管理用户手册(四)——操作详解4.3
- mysql 根据某个字段将多条记录的某个字段拼接成一个字段
- cocos2d-x c++ 制作一个蒙版类型标题框
- 关于The method setMapperClass(Class<? extends Mapper>) in the type Job is not applicable for the argum
- Java 将base64的字符串存进oracle的bolb字段
- java_2017.11.1_继承 接口
- OpenAL播放pcm或wav数据流-windows/ios/android(一)
- 编写一个手机类(Mobile),包括手机品牌(brand)、手机型号(type), 方法包括显示手机信息,并编写测试类进行对象的创建
- Unity官方第一人称射击游戏<恶魔射手>_学习笔记三(敌人脚本)
- 小写字母转换为大写字母
- RSA PKCS1 填充方式
- Mysql中MyISAM引擎和InnoDB引擎的比较
- Hive-sql与SQL的区别
- 微信错误代码:errcode:{40055} errmsg:{invalid button url domain}