• JAVA课堂整理二


    例子一

    1、编写一个Java应用程序,该程序包括3个类:Monkey类、People类和测试类。要求:
    (1)Monkey类中有个public void speak()方法,在speak方法中输出“咿咿呀呀。。。。。。”的信息。
    (2)People类是Monkey类的子类,在People类中重写方法speak,在speak方法中输出“小样的,不错嘛,会说话了!”的信息。
    (3)在People类中新增方法void think(),在think方法中输出“别说话,认真思考!”的信息。

    /**
     * Monkey 父类
     */
    package cn.yjlblog.www;
    
    public class Monkey
    {
        public void speak()
        {
            System.out.println("咿咿呀呀。。。。。。");
        }
    }
    
    
    /**
     * People 子类
     */
    package cn.yjlblog.www;
    
    public class People extends Monkey
    {
    
        public void speak()
        {
            System.out.println("小样的,不错嘛,会说话了!");// TODO Auto-generated method stub
    
        }
        void think()
        {
            System.out.println("别说话,认真思考!");
        }
    }
    
    
    /**
     * TestClass 测试类
     */
    package cn.yjlblog.www;
    
    public class TestClass {
        public static void main(String[] args) {
    
            Monkey m = new Monkey();
            m.speak();
            Monkey p = new People();
            p.speak();
            //Monkey p1 = new People();//The method think() is undefined for the type Monkey
            People p1 = new People();
            p1.think();
    
    
        }
    
    }
    

      

    例子2

    2、按要求编写一个Java应用程序:
    (1)定义一个类(Rectangle),描述一个矩形,包含有长、宽两种属性和计算面积的方法。
    (2)定义一个类(Cuboid),继承自矩形类,同时该类描述长方体,具有长、宽、高属性和计算体积的方法。
    (3)编写一个测试类,对以上两个类进行测试,创建一个长方体,定义其长、宽、高,输出其底面积和体积。

    /**
     * Rctangle 父类
     */
    package cn.yjlblog.www;
    
    public class Rectangle
    {
        private double length;
        private double width;
    
        //生成set 和get 方法
        public double getLength() {
            return length;
        }
        public void setLength(double length) {
            this.length = length;
        }
        public double getWidth() {
            return width;
        }
        public void setWidth(double width) {
            this.width = width;
        }
    
        //构造含有参数的方法
        public Rectangle(double length, double width) {
    
            this.length = length;
            this.width = width;
        }
    
        //求面积
        public double Aera()
        {
            return length * width;
        }
    
    
    
    
    
    }
    
    
    
    /**
     * Cuboid 子类
     */
    package cn.yjlblog.www;
    
    public class Cuboid extends Rectangle
    {
        private double height;
        private double volume;
    
    
        public double getHeight() {
            return height;
        }
    
    
        public void setHeight(double height) {
            this.height = height;
        }
    
        public double getVolume() {
            return volume;
        }
    
        public void setVolume(double volume) {
            this.volume = volume;
        }
    
    
    
    
    
        public Cuboid(double length, double width, double height) {
            super(length, width);
            this.height = height;
    
        }
    
    }
    
    
    
    /**
     * TestClass 测试类
     */
    package cn.yjlblog.www;
    
    public class TestClass {
        public static void main(String[] args) {
    
            Cuboid rct = new Cuboid(10,20,30);
            double v = rct.Aera()*rct.getHeight();
            double s = rct.Aera();
            System.out.println("The Rctangle's volume is:"+v);
            System.out.println("The Rctangle's floor space is:"+s);
    
    
    
        }
    
    }
    

      运行结果

    The Rctangle's volume is:6000.0
    The Rctangle's floor space is:200.0
    

      

    例子3

    3、按要求编写一个Java应用程序:
    (1)编写一个Shape类,具有属性周长(perimeter)和面积(area);
    (2)定义其子类三角形(Triangle)和矩形(Rectangle),分别具有求周长和面积的方法。
    (3)定义测试类,在其main方法中创建三角形和矩形类的对象,并赋给Shape类的对象a和b,使用对象a、b来测试其特性。

    /**
     * Shape 父类
     */
    package cn.yjlblog.www;
    
    public class Shape {
    
        private double perimeter;
        private double area;
        //get set 方法
        public double getPerimeter() {
            return perimeter;
        }
        public void setPerimeter(double perimeter) {
            this.perimeter = perimeter;
        }
        public double getArea() {
            return area;
        }
        public void setArea(double area) {
            this.area = area;
        }
        //构造方法
        public Shape(double perimeter, double area) {
    
            this.perimeter = perimeter;
            this.area = area;
        }
    
        }
    
    
    
      /**
     * Triangle 子类
     */
    package cn.yjlblog.www;
    
    public class Triangle extends Shape {
    
    
    
        public Triangle(double perimeter, double area) {
            super(perimeter, area);
            // TODO Auto-generated constructor s
    
        }
        private double a1;
        private double a2;
        private double a3;
        //set get 方法
        public double getA1() {
            return a1;
        }
        public void setA1(double a1) {
            this.a1 = a1;
        }
        public double getA2() {
            return a2;
        }
        public void setA2(double a2) {
            this.a2 = a2;
        }
        public double getA3() {
            return a3;
        }
        public void setA3(double a3) {
            this.a3 = a3;
        }
    
    
    
    
    
    
    
    
        public double perimeter()
        {
            return a1+a2+a3;
        }
        public double  area()
        {
            double s1=(a1+a2+a3)/2;
            double s2 = s1*(s1-a1)*(s1-a2)*(s1-a3);
            double result = Math.sqrt(s2);
            return result;
        }
    
    
    }
    
    
    
    
    package cn.yjlblog.www;
    
    /**
     * Rectangle 子类
     */
    public class Rectangle extends Shape{
    
        public Rectangle(double perimeter, double area) {
            super(perimeter, area);
            // TODO Auto-generated constructor stub
        }
        private double b1;
        private double b2;
    
    
        public double getB1() {
            return b1;
        }
        public void setB1(double b1) {
            this.b1 = b1;
        }
        public double getB2() {
            return b2;
        }
        public void setB2(double b2) {
            this.b2 = b2;
        }
    
    
        public double perimeter()
        {
            return (b1+b2)*2;
        }
        public double  area()
        {
    
            return b1*b2;
        }
    
    
    
    
    }
    
    
    /**
     * TestClass 测试类
     */
    package cn.yjlblog.www;
    
    public class TestClass {
        public static void main(String[] args) {
    
    
            Triangle a = new Triangle(0, 0);
            a.setA1(3);
            a.setA2(4);
            a.setA3(5);
    
            System.out.println(a.perimeter());
            System.out.println(a.area());
    
            Rectangle b = new Rectangle(0, 0);
            b.setB1(3);
            b.setB2(4);
            System.out.println(b.perimeter());
            System.out.println(b.area());
    
    
    
    
    
    
    
        }
    
    }
    

      运行结果

    12.0 //三角形周长
    6.0  //三角形面积
    14.0  //长方形周长
    12.0  //长方形面积
    

      

    例子4

    4、按要求编写一个Java应用程序:
    (1)编写一个矩形类Rect,包含:两个protected属性:矩形的长length和矩形的宽width;
    两个构造方法:
    一个带有两个参数的构造方法,用于将width和length属性初始化;
    一个不带参数的构造方法,用于将width和length属性初始化为0;
    两个方法:
    求矩形面积的方法area();
    求矩形周长的方法perimeter();
    (2)通过继承Rect类编写一个具有确定位置的矩形类PlainRect,其确定位置用矩形的左上角坐标来标识,包含:两个属性:矩形左上角坐标startX和startY
    两个构造方法:
    一个带有四个参数的构造方法,用于对startX、startY、width和length属性初始化;
    一个不带参数的构造方法,用于将startX、startY、width和length属性初始化为0;
    一个方法:
    判断某个点是否在矩形内部的方法isInside(double x,double y)。如在矩形内,返回true,否则返回false。
    提示:点在矩形内的判断条件:
    x>=startX&&x<=(startX+length)&&y>=startY&&y<=(startY+width)
    (3)编写测试类
    创建一个左上角坐标为(10,10),长为20,宽为10的矩形对象;计算并打印输出矩形的面积和周长;并判断点(25.5,13)是否在矩形内,并打印输出相关信息。

    public class 测试 {
        public static void main(String[] args) {
            PlainRect p=new PlainRect(10,10,10,20);
            p.area();
            p.perimeter();      
            System.out.println("矩形的面积:"+p.area());
            System.out.println("矩形的周长:"+p.perimeter());
            p.isInside(25.5,13);
    
        }
    
    }
    public class Rect {
        protected double length;
        protected double width;
        public Rect(double length,double width) {
            //super();
            this.length=length;
            this.width=width;
        }
        public Rect() {
            //super();
            length=0;
            width=0;
        }
        public double area() {
            return length*width;
        }
        public double perimeter() {
            return length+width;
        }
    }
    public class PlainRect extends Rect {
        protected double startX;
        protected double startY;
        public PlainRect(double startX,double startY,double width,double length) {
            this.startX=startX;
            this.startY=startY;
            this.width=width;
            this.length=length;
        }
        public PlainRect() {
            startX=0;
            startY=0;
            width=0;
            length=0;
        }
        public boolean isInside(double x,double y) {
            if(x>=startX&&x<=(startX+length)&&y>=startY&&y<=(startY+width)){
                System.out.println("点在矩形内部");
                return true;
            }else {
                System.out.println("点不在矩形内部");
                return false;
            }       
        }
    }
    

      

  • 相关阅读:
    随机森林算法参数调优
    BAYES和朴素BAYES
    阿里云 金融接口 token PHP
    PHP mysql 按时间分组 表格table 跨度 rowspan
    MySql按周,按月,按日分组统计数据
    PHP 获取今日、昨日、本周、上周、本月的等等常用的起始时间戳和结束时间戳的时间处理类
    thinkphp5 tp5 会话控制 session 登录 退出 检查检验登录 判断是否应该跳转到上次url
    微信 模板消息
    php 腾讯 地图 api 计算 坐标 两点 距离 微信 网页 WebService API
    php添加http头禁止浏览器缓存
  • 原文地址:https://www.cnblogs.com/llhbk/p/7678328.html
Copyright © 2020-2023  润新知