第 7 章 面向对象编程_第1页
第 7 章 面向对象编程_第2页
第 7 章 面向对象编程_第3页
第 7 章 面向对象编程_第4页
第 7 章 面向对象编程_第5页
已阅读5页,还剩7页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

类和对象简述类和对象之间的关系对象是类的实例。对象的引用和对象本身分别存在哪块存储区?对象的引用实在栈中声明一个地址,来引用堆中的对象。方法签名由哪些部分组成?方法签名有对象名与参数列表组成。创建一个Teacher类,要求描述姓名、性别、年龄、薪水,定义一个方法,用于在教师原有薪水的基础上增加5000,再定义一个TeacherTest类,创建一个Teacher对象并初始化对象的各属性值,调用教师增加薪水的方法,并将增加薪水后的教师信息输出。publicclassTeacher{

privateStringname;

privateStringxingbie;

privateintage;

privateintxinshui;

Teacher(){

Stringname;

Stringxingbie;

intage;

intxinshui;

}

publicvoidsetXinshui(intxinshui){

this.xinshui=xinshui;

}

publicintgetZhangxinshui(){

returnxinshui+5000;

}

publicvoidsetName(Stringname){

=name;

}

publicStringgetName(){

returnname;

}

publicvoidsetXingbie(Stringxingbie){

this.xingbie=xingbie;

}

publicStringgetXingbie(){

returnxingbie;

}

publicvoidsetAge(intage){

this.age=age;

}

publicintgetAge(){

returnage;

}

}=====================================================importjava.util.Scanner;

publicclassTeacherDema{

publicstaticvoidmain(String[]args){

TeacherTeacherTest=newTeacher();

Scannera=newScanner(System.in);

System.out.println("请输入姓名:");

Stringb=a.next();

TeacherTest.setName(b);

System.out.println("请输入年龄:");

intc=a.nextInt();

TeacherTest.setAge(c);

System.out.println("请输入性别:");

Stringd=a.next();

TeacherTest.setXingbie(d);

System.out.println("请输入你的当月工资:");

inte=a.nextInt();

TeacherTest.setXinshui(e);

System.out.println("姓名:"+TeacherTest.getName()+"\n年龄:"+TeacherTest.getAge()+

"\n性别:"+TeacherTest.getXingbie()+

"\n您的当月工资:"+e+

"\n加薪后的薪水为:"

+TeacherTest.getZhangxinshui());

}

}小红养了两只猫,一只叫小黑,今年2岁,黑色,另一只叫小白,今年5岁,白色。请编写一个程序,要求当用户输入小猫的名字时,就显示猫的名字、年龄和颜色。如果用户输入的小猫名字错误,则显示“小红没有养这只猫”。publicclassCar{

privateStringname;

privateintage;

privateStringcolor;

Car(){}

publicvoidsetName(Stringname){

=name;

}

publicStringgetName(){

returnname;

}

publicvoidsetAge(intage){

this.age=age;

}

publicintgetAge(){

returnage;

}

publicvoidsetColor(Stringcolor){

this.color=color;

}

publicStringgetColor(){

returncolor;

}

}======================================================publicclassCarDemo{

publicstaticvoidmain(String[]args){

Scannerscanner=newScanner(System.in);

Cara=newCar();

Carc=newCar();

a.setName("小黑");

a.setAge(2);

a.setColor("黑色");

c.setName("小白");

c.setAge(5);

c.setColor("白色");

System.out.println("请输入小猫的名字:");

Stringk=scanner.next();

if(k.equals("小黑")){

System.out.println("name:"+a.getName()+"age:"+a.getAge()+"color:"+a.getColor());

}elseif(k.equals("小白")){

System.out.println("name:"+c.getName()+"age:"+c.getAge()+"color:"+c.getColor());

}else{

System.out.println("小红没有养这只猫!");

}

}

}字符串Stringstr=newString(“abc”),这段代码一共生成了几个String对象?为什么?给定“stuId,name,age”格式的学生信息,解析并创建学生对象输入自己的身份证号码,并由此号码输出自己的生日,年月日给定一个字符串数组,按照字典顺序进行从小到大的排序(排序算法自己写){"asda","ret","vsa","asdf","vdft","qwr"}统计一个子串在指定字符串中出现的次数(6个)(回家作业)"javasdfjavawerjavavsswetjavadfgdfgjavadfgdfbtujava"取出两个字符串中最大相同的子串模拟一个与trim()功能一致的方法方法定义求圆的面积的方法,并调用该方法求出圆的面积定义一个方法,要求在控制台上画出一个指定长宽的矩形定义求k!的方法,并调用该方法求出10!并输出定义求k!的方法,并调用该方法求出1!+3!+5!+...+19!之和并输出定义求k!的方法,并调用该方法求出C(m,n)=m!/(n!*(m-n)!)并输出定义求两个数中最大数的方法,并调用该方法求出三个数中最大的数定义求三个数中最大数的方法,并调用该方法求出三个数中最大的数编写判定闰年的方法,并调用此方法判定某一年是否是闰年。编写判定闰年的方法,并调用此方法求出公元1年到公元1000年之间的所有闰年。编写一个将实数四舍五入到小数点后第n位的函数,并调用此函数将一个实数舍入到小数点后第2位(是指内部精度而非输出精度)。封装、继承编写一个类Student,代表学员,要求:具有属性:姓名、年龄、性别、专业具有方法:自我介绍,负责输出该学员的姓名、年龄、性别以及专业具有两个带参数的构造方法:第一个构造方法中,设置学员的性别为男,专业为Android,其余属性的值由参数给定;第二个构造方法中,所有属性都由参数给定编写测试类StudentTest进行测试,分别以两种方式对两个Student对象进行初始化,并分别调用他们的自我介绍方法,看看输出结果是否正确。需求定义一个(Person)类,包含属性:姓名,年龄,性别;写好相关的方法,能够构造的时候初始化或者后续修改属性值。定义一个Employee类继承于Person类,包含新的属性:职位;写好相关的方法,能够构造的时候初始化或者后续修改属性值,重写equals方法,规则:当两个对象的姓名,年龄,性别,职位都相等时返回true,否则返回false。写一个测试类进行相关测试(要求可以打印对象的信息,能够比较对象是否"相等")。效果:假设现在需要对员工进行建模,员工包含3个属性:工号、姓名、工资。经理也是员工,除了含有员工的属性外,另外还有一个奖金属性。请使用继承的思想设计出员工类和经理类。要求类中提供必要的方法进行属性访问。用面向对象编程的思想,设计一个猜拳游戏,完成人机猜拳互动游戏的开发。功能:选取对战角色猜拳记录分数效果图:提示:先思考这个程序中一共涉及到多少个类,需要创建多少个对象。为某音像店开发一个迷你DVD管理器,实现DVD碟片的管理,包括如下功能:新增DVD、查看DVD、删除DVD、借出DVD、归还DVD。(后台使用数组来存放DVD对象。默认最多存放100个)设计:DVD类(属性:id,name,lendCount,lendDate,status)(默认每张DVD都是唯一的)lendCount字段每借一次加1DVDDB类(提供一个动态数组来保存多张DVD)DVDManager类(提供操纵功能),添加DVD、查看DVD、删除DVD、借出DVD、归还DVD、DVD排行榜(按借出次数降序排序),退出系统效果图:多态张三可以开关家里的任何电器,比如电灯、电视、电扇等。使用继承和多态来实现开关电器的方法。学校中心配备一台打印机(可以是黑白打印机,也可以是彩色打印机)。中心可以通过打印机打印学员的个人信息(张三和李四等)。通过继承和多态来设计这个程序,使程序具有更好的扩展性和维护性。模拟一个军队作战,军队里面有各种兵,骑兵,步兵等等。每种兵的攻击敌人方式不一样。建立各种各样的兵,至少3种,然后建立一个军官,军官也会上场去攻击敌人,但是军官还有一种行为,就是发号,军官发号了,无论什么兵都去战场攻击敌人,也可以指定哪种兵去攻击敌人。最后程序运行效果就是一个军官开始发号,然后所有被指定的士兵包括军官都去打仗,显示每个人攻击敌人的方式。用Java程序完成以下场景:有一个主人(Master类),他养了两只宠物(Pet类),一只宠物是狗(Dog类),名字叫“旺财”,另一只宠物是猫(Cat类),名字叫“小花”,现在有两种食物(Food类),分别是骨头(Bone)和鱼(Fish)。主人分别给两只宠物喂食物,两只宠物厌食,狗只吃骨头(如果主人为够吃别的食物,就显示“狗不吃某某食物”);猫只吃鱼(如果主人为猫吃别的食物,就显示“猫不吃某某食物”)提示:程序结构如下main方法代码如下程序运行结果如下抽象类和接口通过抽象类定义车类的模版,定义一个抽象方法run(),然后通过抽象的车类来派生拖拉机(Tractor)、卡车(Truck)、小轿车(Saloon),并且有各自的run()方法实现。编

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论