Java_class 类/对象/方法

package java_5_9;
/*
 * @Description: 
 * @Author: Rainbow
 * @version:v1.0
 * @date:2021年5月10日下午1:43:58
 * 
 * class 是Java的精华,类定义了对象的本质,形成了Java面向对象程序设计的基础。
 * 面向对象的三大特性:封装、继承、多态性。
 * 封装:一种将代码与它所处理的数据结合起来,而不被外界干扰和滥用的程序设计机制。
 * 继承:是一个对象获得另一个对象的属性的过程。并支持结构层次类的概念。
 * 多态性:是一种允许使用一个接口来访问一类动作的特性。
 * 类封装了功能。由类构造对象的过程称为创建类的实例。
 * 类是定义对象形式的模板,指定了数据以及操作数据的代码。
 * Java使用类的规范来定义对象(object),对象是类的实例(instance)。
 * 组成类的方法和变量都称为类的成员(member)。
 * 每次在创建类的实例化时,都是在创建一个对象。在类的实例化之前,需要类的数据类型声明。
 * 
 * new 运算符 可以把内存中闲置的空间分配给对象。
 * new 出来的内存,Java中的垃圾回收会自动回收对象,Java使用一种更方便的方法-垃圾回收GC。
 * 垃圾回收器满足的条件,有对象要回收、需要回收这些对象释放空间。
 */
//汽车类的声明
class Vehicle{
	int passenger;// number of passengers
	float fuecap;// fuel capacity in gallons
	int mpg;// miles of gallons

//更好的方法,将rang 封装在 Vehicle 类中。向 Vehicle类中,添加一个计算里程的方法。
	void range() {    //不带返回类型的
		System.out.println("Range is "+fuecap*mpg+"KM");
	}
	int rang_return() { //带返回类型的
		return (int)fuecap*mpg;
	}
	double fueneeded(int miles) {
		return miles/mpg;
	}
}
//使用形参(parameter),方法传递的称为实参(argument).
//判断是否是偶数的类的声明
 class ChkNum{
	 boolean isEven(int x) {
		 if(x%2==0) return true;
		 else return false;
	 }
 }
//构造函数 MyClass
 class MyClass{
	 int x,y,z;
	 MyClass(int u){
		 x=10;
		 y=100;
		 z=u;
	 }
	 
 }
//类的实例化对象
public class class_object_instance {
	public static void main(String[] args){
		Vehicle mini=new Vehicle();
		float range1;
		double gallons;
		int distance=500;
		mini.passenger=5;
		mini.fuecap=15.5F;
		mini.mpg=2;
		range1=mini.fuecap *(float) mini.mpg;
		System.out.println("mini can carry "+mini.passenger+" preson"+
		                    " with a rang of "+range1+" kilometers!");
		System.out.println("can carry"+mini.passenger+".");
		mini.range();
		gallons=mini.fueneeded(distance);
		System.out.println(distance+" need fule is "+gallons+"gallons");
//两个类都是同一类型的,实例出的两个对象的内容互不相干,数据是完全分开的。
//mini 小汽车和 sportscar 跑车 都属于汽车这个类。但是属于不同的车型。
		Vehicle sportscar=new Vehicle();//new 运算符为对象动态分配内存,在Java中必须
		float range2;                   // 动态分配所有的类对象。
		sportscar.passenger=2;
		sportscar.fuecap=20.0F;
		sportscar.mpg=3;
		range2=sportscar.fuecap*(float)sportscar.mpg;
		System.out.println("mini can carry "+sportscar.passenger+" preson"+
                " with a rang of "+range2+" kilometers!");
	    sportscar.range();
 
//传参 
	    ChkNum n=new ChkNum();
	    if(n.isEven(20)) System.out.println("20 is even!");
	    if(n.isEven((101))) System.out.println("101 is even!");
	    if(n.isEven(900)) System.out.println("900 is even!");
//构造函数(形式参数可有)
	    MyClass m1= new MyClass(500);
	    System.out.println("x= "+m1.x+" y= "+m1.y+" z="+m1.z);
	} 
}

  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值