1.分析事物的共性,并抽取出正确的继承体系
现有基础班老师(BaseTeacher)和就业班老师(WorkTeacher)两个类,两者都含有姓名和年龄两个属性,还有一个讲课的行为teach,但不同的是,基础班老师的teach方法输出【基础班老师讲JavaSE】,就业班老师的teach方法输出【就业班老师讲JavaEE】,请用代码实现。
运行结果:
张三老师...23
基础班老师讲JavaSE
李四老师...24
就业班老师讲JavaEE
class Teacher{
String name;
int age;
public Teacher(String name,int age){
this.name = name;
this.age = age;
}
public void teach(){}
}
class BaseTeacher extends Teacher{
public BaseTeacher(String name,int age){
super(name,age);
}
@Override
public void teach() {
System.out.println(name+"老师"+"..."+age);
System.out.println("基础班老师讲JavaSE");
}
}
class WorkTeacher extends Teacher{
public WorkTeacher(String name,int age){
super(name,age);
}
public void teach(){
System.out.println(name+"老师"+"..."+age);
System.out.println("就业班老师讲JavaEE");
}
}
public class Demo1 {
public static void main(String[] args) {
BaseTeacher bt = new BaseTeacher("张三",23);
bt.teach();
WorkTeacher wt = new WorkTeacher("李四",24);
wt.teach();
}
}
2.结合继承的思想,分析下列需求并实现
1. 定义项目经理类Manager 【属性:姓名 工号 工资 奖金】【行为:工作work】
2. 定义程序员类Coder【属性:姓名 工号 工资】【行为:工作work】
3. 要求:通过有参构造创建两个类的对象,并调用各自的work方法
运行结果:
姓名为:张三,工号为:9527,工资为:10000.0,的程序员正在编写代码
姓名为:李四,工号为:9528,工资为:15000.0,奖金为:2000.0,的项目经理正在管理程序员写代码
class Person{
String name;
int id;
int salary;
public Person(String name,int id,int salary){
this.name = name;
this.id =id;
this.salary = salary;
}
public void work(){}
}
class Manager extends Person{
int bonus;
public Manager(String name,int id,int salary,int bonus){
super(name,id,salary);
this.bonus = bonus;
}
@Override
public void work() {
System.out.println("姓名为:"+name+",工号为:"+id+",工资为:"+salary+",奖金为:"+bonus+",的项目经理正在管理程序员写代码");
}
}
class coder extends Person{
public coder(String name,int id,int salary){
super(name,id,salary);
}
@Override
public void work() {
System.out.println("姓名为:"+name+",工号为:"+id+",工资为:"+salary+",的程序员正在编写代码");
}
}
public class Demo1 {
public static void main(String[] args) {
coder c = new coder("张三",9527,10000);
c.work();
Manager m = new Manager("李四",9528,15000,2000);
m.work();
}
}
3.
构造方法 编写Java程序模拟简单的计算器。 定义名为Number的类其中有两个整型数据成员n1和n2应声明为私有。
编写构造方法赋予n1和n2初始值再为该类定义加addition、减subtration、乘multiplication、除division等公有成员方法分别对两个成员变量执行加、减、乘、除的运算。
在main方法中创建Number类的对象调用各个方法并显示计算结果
class Number{
private int n1;
private int n2;
public Number(int n1,int n2){
this.n1 = n1;
this.n2 = n2;
}
public void addition(){
System.out.println(n1+n2);
}
public void subtration(){
System.out.println(n1-n2);
}
public void multiplication(){
System.out.println(n1*n2);
}
public void division(){
System.out.println(n1/n2);
}
}
public class Demo1 {
public static void main(String[] args) {
Number n = new Number(10,5);
n.addition();
n.division();
n.multiplication();
n.subtration();
}
}
4.
在控制台输出如下提示:
购物系统
--------------------------------------
1. 客户信息管理
2. 购物结算
3. 真情回馈
4. 注销
5. 退出
--------------------------------------
请选择(1~5)
键盘录入1~5,输入对应操作
import java.util.Scanner;
public class Demo1 {
public static void main(String[] args) {
System.out.println("**************购物系统************");
System.out.println("---------------------------------");
System.out.println("*---------1. 客户信息管理---------*");
System.out.println("*---------2. 购物结算 ----------*");
System.out.println("*---------3. 真情回馈 ----------*");
System.out.println("*---------4. 注销 ------------*");
System.out.println("*---------5. 退出 ------------*");
System.out.println("---------------------------------");
System.out.println("请选择(1~5)");
Scanner sc = new Scanner(System.in);
int x = sc.nextInt();
switch(x){
case 1:
System.out.println("欢迎来到客户信息管理页面");
break;
case 2:
System.out.println("欢迎来到购物结算页面");
break;
case 3:
System.out.println("欢迎来到真情回馈页面");
break;
case 4:
System.out.println("欢迎来到注销页面");
break;
case 5:
System.out.println("退出");
break;
}
}
}
5.
定义一个人类,包括属性:姓名、性别、年龄、国籍;包括方法:吃饭、睡觉,工作。
(1)根据人类,派生一个学生类,增加属性:学校、学号;重写工作方法(学生的工作是学习)。
(2)根据人类,派生一个工人类,增加属性:单位、工龄;重写工作方法(工人的工作是??自己想吧)。
(3)根据学生类,派生一个学生干部类,增加属性:职务;增加方法:开会。
(4)编写主函数分别对上述3类具体人物进行测试。
class Person{
String name;
String sex;
int age;
String nation;
public void eating(){}
public void sleeping(){}
public void working(){}
}
class Student extends Person{
String school;
int Sno;
@Override
public void working() {
System.out.println("学生的工作是学习");
}
}
class Worker extends Person{
String unit;
int workAge;
public void working() {
System.out.println("工人的工作是搬砖");
}
}
class StudentHelp extends Student{
String Sjob;
public void meeting(){
System.out.println("学生干部开会");
}
}
public class Demo1 {
public static void main(String[] args) {
Student s = new Student();
s.working();
Worker w = new Worker();
w.working();
StudentHelp st = new StudentHelp();
st.meeting();
}
}