精华内容
下载资源
问答
  • Java 抽象类经典例子2

    千次阅读 2016-10-18 10:24:47
    Java 抽象类经典例子2目录Java 抽象类经典例子2目录 问题描述 代码块 答案问题描述抽象类的练习 学生案例: 具体类:一般学生 优秀学生 共性:姓名 年龄 年纪 吃饭 差异: 学习内容代码代码块语法遵循...

    Java 抽象类经典例子2

    目录

    问题描述

    抽象类的练习
    学生案例:
    具体类:一般学生 优秀学生
    共性:姓名 年龄 年纪
    吃饭
    差异: 学习内容

    代码块

    代码块语法遵循标准markdown代码,例如:

    abstract class student {
        //成员变量
        private String name;
        private int age;
        private int grand;
        //无参构造方法
        public student(){}
        //带参构造方法
        public student(String name,int age,int grand){
            this.name=name;
            this.age=age;
            this.grand=grand;
        }
    
        public void setname(String name){
            this.name=name;
        }
        public String getname(){
            return name;
        }
        public void setage(int age){
            this.age=age;
        }
        public int getage(){
            return age;
        }
        public void setgrand(int grand){
            this.grand=grand;
        }
        public int getgrand(){
            return grand;
        }   
        //抽象方法
        abstract public void study();
        //成员方法
        public void eat(){
            System.out.println("该吃饭了:");
        }
    }
    class Basicstudent extends student {
        //构造方法
        public Basicstudent(){}
        public Basicstudent(String name,int age,int grand){
            super(name,age,grand);
        }
        public void study(){
            System.out.println("Basicstudent:   study");
        }
    
    }
    class Goodstudent extends student{
    
        public Goodstudent(){}
        public Goodstudent(String name,int age,int grand){
            super(name,age,grand);
        }
    
        public void study(){
            System.out.println("Goodstudent:  study");
        }
    }
    public class AbstractTest3{
        public static void main(String[] args){
            student s =new Basicstudent();
            s.setname("Basicstudent1");
            s.setage(20);
            s.setgrand(1111);
            System.out.println(s.getname()+"----"+s.getage()+"----"+s.getgrand());
            s.eat();
            s.study();
    
            s =new Basicstudent("Basicstudent1",20,2222);
            System.out.println(s.getname()+"----"+s.getage()+"----"+s.getgrand());
            s.eat();
            s.study();
        }
    }

    答案

    Basicstudent1—-20—-1111
    该吃饭了:
    Basicstudent: study
    Basicstudent1—-20—-2222
    该吃饭了:
    Basicstudent: study

    展开全文
  • Java 抽象类经典例子3目录Java 抽象类经典例子3目录 问题描述 代码块 答案问题描述抽象类的练习 学生案例: 具体类:一般员工 优秀员工 共性:姓名 工号 薪水 差异: 做事 奖金代码代码块语法遵循标准...

    Java 抽象类经典例子3

    目录

    问题描述

    抽象类的练习
    学生案例:
    具体类:一般员工 优秀员工
    共性:姓名 工号 薪水
    差异: 做事 奖金

    代码块

    代码块语法遵循标准markdown代码,例如:

    //抽象类 employee
    abstract class employee{
        private String name;
        private String id;
        private int salary;
    
        public employee(){}
    
        public employee(String name,String id,int salary){
            this.name=name;
            this.id=id;
            this.salary=salary;
        }
        public void setname(String name){
            this.name=name;
        }
        public String getname(){
            return name;
        }
    
        public void setid(String id){
            this.id=id;
        }
        public String getid(){
            return id;
        }
    
        public void setsalary(int salary){
            this.salary=salary;
        }
        public int getsalary(){
            return salary;
        }
        public abstract void work();
    }
    
    class Basicemployee extends employee{
        public Basicemployee(){}
        public Basicemployee(String name,String id,int salary){
            super(name,id,salary);
        }   
        public void work(){
            System.out.println("做简单工作:");
        }
    }
    
    class Goodempoyee extends employee{
        private int money;
    
        public Goodempoyee() {}
        public Goodempoyee(String name,String id,int salary,int money){
            super(name,id,salary);
            this.money=money;
        }
        public void setmoney(int money){
            this.money=money;
        }
        public int getmoney(){
            return money;
        }
        public void work(){
            System.out.println("做高级工作:");
        }   
    }
    
    class AbstractTest4{
        public static void main(String[] args){
    
        employee emp=new Basicemployee();
        emp.setname("Basicemployee-1");
        emp.setid("qwe0001");
        emp.setsalary(10001);
        System.out.println(emp.getname()+"----"+emp.getid()+"----"+emp.getsalary());
    
        emp=new Basicemployee("Basicemployee-2","qwe0002",10002);
        System.out.println(emp.getname()+"----"+emp.getid()+"----"+emp.getsalary());
    
        //子类特有的要用一般的方法来调用,如果用多态则会报错
        Goodempoyee emp2=new Goodempoyee();
        emp2.setname("Goodempoyee-3");
        emp2.setid("qwe0003");
        emp2.setsalary(30000);
        emp2.setmoney(10000);
        System.out.println(emp2.getname()+"----"+emp2.getid()+"----"+emp2.getsalary()+"----"+emp2.getmoney());
        }
    }
    
    
    

    答案

    Basicemployee-1—-qwe0001—-10001
    Basicemployee-2—-qwe0002—-10002
    Goodempoyee-3—-qwe0003—-30000—-10000

    展开全文
  • Java 抽象类目录Java 抽象类目录 问题描述 代码块 答案问题描述抽象类的练习 老师案例: 具体类:基础班老师 就业班老师 共性:姓名 年龄 讲课代码代码块语法遵循标准markdown代码,例如:abstract class ...

    Java 抽象类经典例子1

    目录

    问题描述

    抽象类的练习
    老师案例:
    具体类:基础班老师 就业班老师
    共性:姓名 年龄 讲课

    代码块

    代码块语法遵循标准markdown代码,例如:

    abstract class teacher{
        private int age;
        private String name;
        public teacher(){}
        public teacher(String name,int age){
            this.name=name;
            this.age=age;
        }
        public void setage(int age){
            this.age=age;
        }
        public int getage(){
            return age;
        }
        public void setname(String name){
            this.name=name;
        }
        public String getname(){
            return name;
        }
        //抽象方法
        public abstract void teach();
    }
    class BasicTeacher extends teacher{
        public BasicTeacher(){}
        public BasicTeacher(String name,int age){
        super(name,age);
        }
        public void teach(){
            System.out.println("BasicTeacher");
        }
    
    }
    class WorkTeacher extends teacher{
        public WorkTeacher(){}
        public WorkTeacher(String name,int age){
        super(name,age);
        }
        public void teach(){
            System.out.println("WorkTeacher");
        }
    }
    
    public class AbstractTest2 {
    
        public static void main(String[] args) {
            //测试1       无参应用
            System.out.println("------测试1------");
            BasicTeacher bt1=new BasicTeacher();
            bt1.setname("bt1");
            bt1.setage(20);
            bt1.teach();
            System.out.println(bt1.getname()+"----"+bt1.getage());
    
    
            WorkTeacher wt1=new WorkTeacher();
            wt1.setname("wt1");
            wt1.setage(30);
            wt1.teach();
            System.out.println(wt1.getname()+"----"+wt1.getage());
    
            //测试2
            System.out.println("------测试2------");
            BasicTeacher bt2=new BasicTeacher("bt2",22);
            System.out.println(bt2.getname()+"----"+bt2.getage());
            bt2.teach();
    
            WorkTeacher wt2=new WorkTeacher("wt2",32);
            System.out.println(wt2.getname()+"----"+wt2.getage());
            wt2.teach();
    
            //多态版只有一个t,体现多态的简洁
            //测试3        //多态版的无参
            System.out.println("------测试3------");
            teacher t=new BasicTeacher();  
            t.setname("dbt1");
            t.setage(20);
            System.out.println(t.getname()+"----"+t.getage());
            t.teach();
    
            t=new WorkTeacher();
            t.setname("t");
            t.setage(20);
            System.out.println(t.getname()+"----"+t.getage());
            t.teach();
    
            //测试4       //多态的带参 
            System.out.println("------测试4------");
            t=new BasicTeacher("t",22);  
            System.out.println(t.getname()+"----"+t.getage());
            t.teach();
    
            t=new WorkTeacher("t",32);
            System.out.println(t.getname()+"----"+t.getage());
            t.teach();
        }
    }
    ... prompt'''

    答案

    ——测试1——
    BasicTeacher
    bt1—-20
    WorkTeacher
    wt1—-30
    ——测试2——
    bt2—-22
    BasicTeacher
    wt2—-32
    WorkTeacher
    ——测试3——
    dbt1—-20
    BasicTeacher
    t—-20
    WorkTeacher
    ——测试4——
    t—-22
    BasicTeacher
    t—-32
    WorkTeacher

    展开全文
  • Shape具有抽象方法area和perimeter,分别计算形状的面积和周长。试定义一些二维形状(如矩形、三角形、圆形等),这些均为Shape的子类并计算出这些形状的面积和周长,打印输出相关信息。 代码: //形状...

    题目:定义Shape类表示一般二维图形。Shape具有抽象方法area和perimeter,分别计算形状的面积和周长。试定义一些二维形状类(如矩形、三角形、圆形等),这些均为Shape类的子类并计算出这些形状的面积和周长,打印输出相关信息。

    代码:

    //形状类
    public
    abstract class Shape { public abstract double area(); public abstract double perimeter(); }
    //矩形类
    public
    class Rectangle extends Shape { private double length; private double width; 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; } @Override public double area() { return getLength() * getWidth(); } @Override public double perimeter() { return 2 * (getWidth() + getWidth()); } }
     
    //三角形类
    public class Triangle extends Shape { private double a, b, c; public double getA() { return a; } public void setA(double a) { this.a = a; } public double getB() { return b; } public void setB(double b) { this.b = b; } public double getC() { return c; } public void setC(double c) { this.c = c; } @Override public double area() { double p = (getA() + getB() + getC()) / 2; return Math.sqrt(p * (p - getA()) * (p - getB()) * (p - getC())); } @Override public double perimeter() { return getA() + getB() + getC(); } }
    //圆形类
    public
    class Circle extends Shape { private double diameter; public double getDiameter() { return diameter; } public void setDiameter(double diameter) { this.diameter = diameter; } @Override public double area() { return Math.PI * Math.pow(getDiameter() / 2, 2); } @Override public double perimeter() { return Math.PI * getDiameter(); } }
    //测试代码
    public class 测试 { public static void main(String [] args){ Rectangle rec = new Rectangle(); rec.setLength(10); rec.setWidth(5); double rec_area = rec.area(); double rec_perimeter = rec.perimeter(); System.out.println("矩形的面积:"+rec_area+",周长"+rec_perimeter); Triangle tri = new Triangle(); tri.setA(3); tri.setB(4); tri.setC(5); double tri_area = tri.area(); double tri_perimeter = tri.perimeter(); System.out.println("三角形的面积:"+tri_area+",周长"+tri_perimeter); Circle cir = new Circle(); cir.setDiameter(10); double cir_area = cir.area(); double cir_perimeter = cir.perimeter(); System.out.println("圆形的面积:"+cir_area+",周长"+cir_perimeter); } }

     

    转载于:https://www.cnblogs.com/guwei4037/p/6021053.html

    展开全文
  • Java抽象类

    2016-12-12 16:30:02
    抽象类Java里面用的少,Java抽象类转换成了接口。抽象类代码的角度来讲就是要求人家实现的方法   也有自己实现的方法。抽象类在C++里面用的非常好,抽象类在C++里面是做规范做类型的。图中1.4动物的   ...
  • 1. 我想举一个具体的例子来说明什么是抽象类: 比如我想定义一个类Cat,又想定义一个类Dog,可是Cat和Dog之间既有相同点,又有不同点,那我就要创造一个抽象类Animal,这样使Cat和Dog都继承自Animal。 2. 那接口...
  • Java抽象类与接口

    2020-02-24 01:23:35
    认识抽象类 1. 简介 假设要编写一个计算圆、三角形和矩形的面积与周长的程序。若按照前面所学的方式编程,就必须定义3个类:圆类、三角形类、矩形类,它们之间没有继承关系。程序写好之后虽然能执行,但从代码的...
  • 前言 对于面向对象编程来说,抽象是它的特征之一。 在Java中,实现抽象的机制分两种,一为抽象类,...代码例子 结语 什么是抽象 从具体事物抽出,概括它们共同的方面,本质属性与关系等,称为抽象。看不...
  • Java抽象类

    2019-02-16 17:49:30
    Java抽象类1. 思考2. 抽象类的特点3. 抽象类细节问题3.1 抽象类一定是个父类?3.2 抽象类是否有构造函数?3.3 抽象类中是否可以不定义抽象方法。3.4 抽象关键字abstract不可以和哪些关键字共存?4. 抽象类练习 1....
  • ”——网易云音乐热评《人设》java -- 抽象类目录抽象类概念特点案例抽象类的用法构造函数成员变量成员方法案例序为什么要有抽象类?我们先来啰嗦几句。举一个简单的例子。先看一下下列代码。class Animal//创建一个...
  • java抽象类(笔记)

    2011-10-30 17:46:19
    java语言里,类有两种:一种是具体类,另一种是抽象类。具体类可以实例化,抽象类不可以实例化。  抽象类的用途  具体类不是用来抽象的,只要有可能就不要从具体类继承。 抽象类应该更多的拥有...
  • 十、JAVA抽象类的定义使用

    千次阅读 2018-04-26 20:43:57
    抽象类的基本概念 抽象方法,只声明而未实现的方法我们称为抽象方法,所有的抽象方法都需要用abstract关键字声明,包含抽象方法的类也需要使用abstract关键字声明,抽象类和普通类相比,区别在于抽象类带有抽象方法...
  • 目录什么是抽象什么是抽象类什么是接口区别代码例子结语什么是抽象从具体事物抽出,概括它们共同的方面,本质属性与关系等,称为抽象。看不见,摸不着的东西叫做抽象,抽象是人们对世界万物的感觉,用特定的...
  • 学些Java抽象类和抽象方法,书中介绍一个例子:【问题描述】编写一个抽象父类SpeedMeter速度表,提供普通方法getSpeed()计算速度,给子类使用,但留给子类实现抽象方法getRadius(),且getSpeed()依赖getRadius();...
  • Java抽象类得作用

    千次阅读 2019-06-18 17:59:40
    Java抽象类,可以理解为一种约定工具,在代码中抽象类在某种情况适合用来写出大体框架,具体实现流程由抽象类事先定义完毕,具体实现过程可以定义抽象方法,而抽象方法交由子类去具体实现。 举个例子:定义一个...
  • 抽象类最大的特点是强制规定了子类的实现结构,同时还可以起到模板的作用。 模板方法设计模式(比如定义一个操作中的算法的骨架,将步骤延迟到子类中)的组成: 抽象类:定义算法的骨架,实现了模板方法; 具体类:...
  • java_抽象类应用

    2019-09-30 09:47:18
    例子通过一个实例来具体阐述抽象类的应用,首先一个抽象类Person2,里面定义了一些人的共有属性(年龄,姓名),和抽象方法want(),want()方法来具体实现不同的人的需求(学生想要成绩,工人想要工资)。...
  • 二、抽象类的应用场景及例子 2.1 应用场景 2.2 抽象类例子 2.2.1 目录结构 2.2.2 实现代码 2.2.3 效果 2.3 使用模板的优缺点 三、抽象类和接口类的区别 对于初学者来说很多不知道抽象类和接口类是怎么...
  • 抽象类 抽象类的概念有人会觉得有些抽象,下面我将彻头彻尾的介绍抽象类的概念及其应用 我们先来看下面这组代码 在刚才的例子中, 我们发现,父类 Shape 中的 draw 方法好像并没有什么实际工作,主要的输出都是由...
  • 1.在java中,接口,抽象类和类都是对事物不同层次的抽象,接口是纯抽象类(最顶层的抽象),抽象类次之; 2.抽象类是用来继承的,而接口是用来实现的,接口是一种行为规范; 3.对于对接口和抽象类的选择,要考虑使用...
  • 这一节主要讲的内容是java中泛型的应用,通过该篇让大家更好地理解泛型,以及面试中经常说的泛型类型擦除是什么概念,今天就带着这几个问题一起看下:举一个简单的例子:这里可以看出来在代码编写阶段就已经报错了,不...
  • [Java][抽象类的使用]

    2018-11-26 13:29:53
    目录使用抽象类的一个例子思路代码小结 使用抽象类的一个例子 某公司存在雇员: 1.程序员,有工号,年龄,工资,负责编写代码。 2.经理,有工号,年龄,工资,奖金,负责企业管理。 请为该数据建模。 思路 1.采用...
  • 1、装饰器模式: (1)抽象组件:需要装饰的抽象接口对象(接口或抽象父类) ...(3)定义抽象装饰:一个抽象放大声音(Ampl)。继承声音接口(Voice),在自身构造方法中传入Voice类型对象参数 (4)定
  • 为了提高代码的复用,将共性代码代码进行抽取。 抽取到单独的一个中进行封装。这时学生和工人中就需要定义姓名和年龄了。...例子1:父子继承实例演示。 [java] view plain copy package cn.itheima

空空如也

空空如也

1 2 3 4 5 ... 20
收藏数 447
精华内容 178
关键字:

java抽象类代码例子

java 订阅