`
aiyanbo
  • 浏览: 65518 次
  • 性别: Icon_minigender_1
  • 来自: 上海
社区版块
存档分类
最新评论

超好玩的oop题目

    博客分类:
  • java
阅读更多

题目内容:在一个公寓里,小红是一个学生,另外还有一个建筑工人,平时帮助别人换锁,有一个是医生。请用oop的思想用   代码实现小红家的情况!

 

Java参考答案:( 为了方便,我把所有的类都放在一个文件里面了)

 

public class Test{
   public static void main(String[] args){
      House h=new House();
      h.setStu(new Student("0001","小红",'女'));
      h.setDoc(new Doctor("丽丽",'女'));
      h.list(h.getStu());
      h.list(h.getDoc());
      Lock l=new Builder("老明",'男');
      h.list(l);
   }
}
class Person{
   private String name;
   private char sex;
   public void setName(String name){
     this.name=name;
   }
   public String getName(){
     return name;
   }
   public void work(){
     System.out.println("努力工作!");
   }
   public Person(String name,char sex){
     this.name=name;
     this.sex=sex;
   }
}
class Student extends Person{
   private String sid;
   public void setSid(String sid){
      this.sid=sid;
   }
   public String getSid(){
      return sid;
   }
   public void work(){ //使用继承
     System.out.println(getName()+"学习很用功!");
   }
   public Student(String sid,String name,char sex){
     super(name,sex);
     this.sid=sid;
   }
}
interface Lock{
   void job();
}
class Builder extends Person implements Lock{ //使用继承,和实现接口
   public void work(){
     System.out.println(getName()+"是建筑工人,工作挺累的!");
   }
   public void job(){
     System.out.println(getName()+"是开锁专家,为人民服务!");
   }
   public Builder(String name,char sex){
     super(name,sex);
   }
}
class Doctor extends Person{ //使用继承
   public void work(){
     System.out.println(getName()+"是一个医生,人们的白衣天使!");
   }
   public Doctor(String name,char sex){
     super(name,sex);
   }
}
class House{  //使用合成
   private Student stu;
   private Builder bui;
   private Doctor doc;
   public void list(Person per){
      per.work();
   }
   public void list(Lock lock){
      lock.job();
   }
   public void setStu(Student stu){
      this.stu=stu;
   }
   public Student getStu(){
     return stu;
   }
   public void setBui(Builder bui){
      this.bui=bui;
   }
   public Builder getBui(){
     return bui;
   }
   public void setDoc(Doctor doc){
      this.doc=doc;
   }
   public Doctor getDoc(){
     return doc;
   }
}

 

在C#中也是大同小异,因我我只装了jdk,没有装vs 所以在这里我就不演示C#代码了。­

   

   为了方便,我把所有的类都放在一个文件里面了

 

 

 

 

 

 

 

 

 

 

 

1
0
分享到:
评论

相关推荐

    五个超级好玩的C++游戏

    这是一款策略类游戏,可能涉及到C++中的面向对象编程(OOP)概念,如类、对象、继承、多态和封装。游戏可能使用了图形库,如SDL或OpenGL来实现游戏画面。同时,游戏逻辑可能运用了状态机设计模式,处理不同的游戏...

    JAVAOOP所有内测题目

    以下是一些可能涵盖在"JAVAOOP所有内测题目"中的关键知识点: 1. **类与对象**:Java中的所有数据结构都基于类,而类是对象的蓝图。理解如何定义类,包括属性(成员变量)和方法(成员函数),以及如何创建和使用...

    JAVA OOP笔试题

    OOP笔试题,《使用Java实现面向对象编程》阶段测试-笔试试卷

    oop(面向对象程序设计)考试题

    这份"浙江大学OOP(面向对象程序设计)历年考题(英文版)"包含了历年的考试题目及答案,是学习和备考的重要资源。 首先,我们要了解OOP的基石——类与对象。类是对象的模板,定义了一组属性(数据成员)和方法...

    javaOOP项目案例

    用面向对象的方法模仿一个计算机的存储与显示操作

    西电软工oop上机题目4 10.6-2.rar

    在本题中,“西电软工oop上机题目4 10.6-2.rar”要求我们完成并测试一个名为`Date`的类,其内部实现将采用“自1970年1月1日以来的天数”表示日期。 1. **类的设计**: - `Date`类应包含表示日期的私有成员变量,如...

    OOP问题题目及解决方法1

    在C++编程中,面向对象程序设计(OOP)是一种重要的思想,它涉及到类、对象、封装、继承和多态等核心概念。本题主要涉及C++中的动态内存管理、运算符重载、向量操作以及inline函数等相关知识点。 1. **动态内存管理...

    oop实践

    **OOP实践** 面向对象编程(Object-Oriented Programming,简称OOP)是一种软件开发方法,它基于对象、类和消息传递的概念,旨在提高代码的重用性、可维护性和可扩展性。在实际的软件开发中,OOP是解决复杂问题的...

    C++(OOP)教材

    C++基于C语言并扩展了其功能,引入了面向对象编程(OOP)的概念,使得程序设计更加贴近实际问题的解决方式。 面向对象程序设计(OOP)的基本思想是将程序设计中的数据和操作数据的方法结合在一起,形成对象。这种...

    javascript oop模式讲解

    JavaScript OOP(面向对象编程)模式是编程领域中一种重要的设计思想,它允许开发者通过类和对象来组织和管理代码,提高代码的可重用性和可维护性。在这个讲解中,我们将深入探讨JavaScript中的OOP模式,特别是如何...

    PHP OOP入门必读

    OOP(面向对象编程)是编程的一种高级方法,它使代码更易于维护、扩展和重用。本资料集合旨在帮助初学者理解并掌握PHP中的OOP概念。 首先,我们从"PHP5面向对象初步(第一章).pdf"开始,这一章节通常会介绍OOP的...

    编程范式与OOP思想

    在多种编程范式中,面向对象编程(Object-Oriented Programming,OOP)是一种十分流行的编程范式,它将现实世界中的事物和概念抽象成对象,并让这些对象在程序中相互作用,以完成特定的任务。 OOP的核心思想是使用...

    OOP的未来.pdf

    标题和描述均提到了"OOP的未来",即面向对象程序设计(Object-Oriented Programming,简称OOP)的前景。OOP是一种编程范式,它使用“对象”来设计软件,对象不仅包含数据,还包含处理这些数据的方法。在IT行业,OOP...

    OOP.rar_OOP java_java oop_oop

    面向对象编程(Object-Oriented Programming,简称OOP)是一种编程范式,它基于“对象”的概念,将数据和操作数据的方法封装在一起。在Java语言中,OOP是其核心特性,使得代码更加模块化、可重用和易于维护。在给定...

    JavaOOP.xmind

    java oop,适合小白。

    Java 第一阶段建立编程思想 【零钱通(OOP)】---- 代码

    Java 第一阶段建立编程思想 【零钱通(OOP)】---- 代码 Java 第一阶段建立编程思想 【零钱通(OOP)】---- 代码 Java 第一阶段建立编程思想 【零钱通(OOP)】---- 代码 Java 第一阶段建立编程思想 【零钱通(OOP)...

    书籍:C语言实现OOP

    《C语言实现OOP》是一本独特而富有挑战性的书籍,它揭示了如何在传统的、非面向对象的C语言中实现面向对象编程(OOP)的概念。面向对象编程是一种广泛应用于现代软件开发的方法,它强调数据和操作数据的函数封装在...

    工业自动化 TwinCAT3 OOP编程基本例程(方法,接口,属性,实现)

    本教程将深入探讨TwinCAT3中的面向对象编程(OOP)概念,包括方法、接口、属性以及它们的实现。这将帮助工程师更高效地编写和组织复杂的自动化程序。 首先,我们来看**方法**。在OOP中,方法是对象可以执行的操作。...

Global site tag (gtag.js) - Google Analytics