java 上机实践四 类与对象
来源:互联网 发布:前端程序员是干什么的 编辑:程序博客网 时间:2024/04/19 10:45
实验一,机动车:
实验目的:理解类和对象的属性和公能
主类
public class Main{public static void main(String args[]){Vehicle car1=new Vehicle();Vehicle car2=new Vehicle();car1.setPower(128);car2.setPower(76);System.out.println("car1的功率为 " + car1.getPower());System.out.println("car2的功率为 " + car2.getPower());car1.speedUp(10);car2.speedUp(80);System.out.println("car1目前的速度为 "+car1.getSpeed());System.out.println("car2目前的速度为 "+car2.getSpeed());car1.speedDown(10);car2.speedDown(20);System.out.println("car1目前的速度为 "+car1.getSpeed());System.out.println("car2目前的速度为 "+car2.getSpeed());}}
Vehicle类
public class Vehicle {double speed;int power;void speedUp(int s){speed+=s;if(speed>200){System.out.println("请减速慢行");speed=200;}}void speedDown(int s){speed-=s;}void setPower(int p){power=p;}int getPower(){return power;}double getSpeed(){return speed;}}
实验二,家中的电视:
实验目的:掌握对象的组合以及数据的传递
TV . java
public class TV {int channel;void setChannel(int s){if(s<1)System.out.println("频道数错误");elsechannel=s;}int getChannel(){return channel;}void showProgram(){switch(channel){case 1:System.out.println("综合频道");break;case 2:System.out.println("经济频道");break;case 3:System.out.println("国际频道");break;case 4:System.out.println("体育频道");break;default:System.out.println("不能收看");}}}
Family . java
public class Family {TV homeTV;void buyTV(TV tv){homeTV=tv;}void remoteControl(int m){homeTV.setChannel(m);}void seeTV(){homeTV.showProgram();}}
主类:
public class Main{public static void main(String args[]){TV haierTV=new TV();haierTV.setChannel(2);System.out.println("haierTV的频道为 "+ haierTV.getChannel());Family zhangSanFamily=new Family();zhangSanFamily.buyTV(haierTV);System.out.println("张三开始看电视");zhangSanFamily.seeTV();int m=1;System.out.println("张三将电视节目更换到"+ m+ "频道");zhangSanFamily.remoteControl(m);System.out.println("haier电视的节目"+haierTV.getChannel());System.out.println("张三在看电视的节目");zhangSanFamily.seeTV();}}
实验三,饮用水:
实验目的:掌握类变量和实例变量,类方法和实例方法的区别
实例变量
- 实例变量声明在一个类中,但在方法、构造方法和语句块之外;
- 当一个对象被实例化之后,每个实例变量的值就跟着确定;
- 实例变量在对象创建的时候创建,在对象被销毁的时候销毁;
- 实例变量的值应该至少被一个方法、构造方法或者语句块引用,使得外部能够通过这些方式获取实例变量信息;
- 实例变量对于类中的方法、构造方法或者语句块是可见的。一般情况下应该把实例变量设为私有。通过使用访问修饰符可以使实例变量对子类可见;
- 实例变量具有默认值。数值型变量的默认值是0,布尔型变量的默认值是false,引用类型变量的默认值是null。变量的值可以在声明时指定,也可以在构造方法中指定;
- 实例变量可以直接通过变量名访问。但在静态方法以及其他类中,就应该使用完全限定名:ObejectReference.VariableName。
类变量(静态变量)
- 类变量也称为静态变量,在类中以static关键字声明,但必须在方法构造方法和语句块之外。
- 无论一个类创建了多少个对象,类只拥有类变量的一份拷贝。
- 静态变量除了被声明为常量外很少使用。常量是指声明为public/private,final和static类型的变量。常量初始化后不可改变。
- 静态变量储存在静态存储区。经常被声明为常量,很少单独使用static声明变量。
- 静态变量在程序开始时创建,在程序结束时销毁。
- 与实例变量具有相似的可见性。但为了对类的使用者可见,大多数静态变量声明为public类型。
- 默认值和实例变量相似。数值型变量默认值是0,布尔型默认值是false,引用类型默认值是null。变量的值可以在声明的时候指定,也可以在构造方法中指定。此外,静态变量还可以在静态语句块中初始化。
- 静态变量可以通过:ClassName.VariableName的方式访问。
- 类变量被声明为public static final类型时,类变量名称必须使用大写字母。如果静态变量不是public和final类型,其命名方式与实例变量以及局部变量的命名方式一致。
Village。java
public class Village {static int waterAmount;int peopleNumber;String name;Village(String s){name=s;}static void setWaterAmount(int s){waterAmount=s;}void drinkWater(int s){if(waterAmount-s>0){waterAmount-=s;System.out.println(name + " 喝了 "+s+" L 水");}else{System.out.println(name + " 喝了 "+waterAmount+" L 水");waterAmount=0;}}static int loolWaterAmout(){return waterAmount;}void setPeople(int n){peopleNumber=n;}int getPeople(){return peopleNumber; }}
主类:
public class Main{public static void main(String args[]){Village.setWaterAmount(200);int leftWater=Village.loolWaterAmout();System.out.println("井里面还有 "+leftWater+" L 水");Village zhaoZhuang=new Village("赵庄");Village maJiaHeZhi=new Village("马家河子");zhaoZhuang.setPeople(80);maJiaHeZhi.setPeople(120);zhaoZhuang.drinkWater(50);leftWater=maJiaHeZhi.loolWaterAmout();String name=maJiaHeZhi.name;System.out.println(name+" 发现井里面剩下 "+leftWater+" L 水");zhaoZhuang.drinkWater(100);leftWater=maJiaHeZhi.loolWaterAmout();name=zhaoZhuang.name;System.out.println(name+" 发现井里面剩下 "+leftWater+" L 水");System.out.println("赵庄的人口 "+zhaoZhuang.getPeople());System.out.println("马家河子的人口 "+maJiaHeZhi.getPeople());}}
0 0
- java 上机实践四 类与对象
- java上机。。。类与对象
- 第一次上机实践Java
- Java上机课后实践
- Java(四)对象与类
- Java-四-类、对象与接口-170606
- [Java]复习笔记(四)--对象与类
- 8.15-16类和对象以及上机实践
- 上机练习2 类与对象
- 上机练习2 类与对象
- 上机练习2 类与对象
- 上机练习2 类与对象
- 上机练习2 类与对象
- 上机练习2 类与对象
- 上机练习2 类与对象2
- 上机练习2 类与对象
- Java、XML与数据库编程实践(四)
- Java、XML与数据库编程实践(四)
- 3.《深入理解Java虚拟机》内存溢出实例分析
- 关联函数的位置
- java 工具类
- Android AndroidManifest 清单文件以及权限详解
- 一个字总结我的2016
- java 上机实践四 类与对象
- [POJ2318]TOYS(计算几何+二分)
- ZXing 源码分析(简阅)
- 备忘录
- [POJ2398]Toy Storage(计算几何+二分)
- 查看android studio和apk文件签名
- 输入年月 返回当前月份的天数
- 60. Permutation Sequence
- 前端工程师面试指南