java基础——对象

面对对象

/**
 * 面向过程:C 
 *      当开发一个功能的时候,看中的是中间的过程,中间每一个步骤都需要亲力亲为
 * 面向对象 java js 
 *     当开发一个功能的时候,不看重中间的过程和步骤,看中是谁能帮我去完成这件事情
 *
 */	
	public static void main(String[] args) {
	
		int[] arr={10,80,90,78,98};
		//把数组按照指定格式输出 [10,80,90,78,98]
		
		//面向过程
		System.out.print("[");
		for(int i=0;i<arr.length;i++){
			if(i==arr.length-1){
				System.out.print(arr[i]+"]");
			}else{
				System.out.print(arr[i]+",");
			}
		}
		
		//面向对象
		System.out.println(Arrays.toString(arr));
	}

成员变量和局部变量的区别

  1. 定义的位置不同
    • 成员变量定义在类内部,方法之外
    • 局部变量定义在方法内部
  2. 作用域不同
    • 成员变量作用在类的内部
    • 局部变量作用在方法内部
  3. 默认值不同
    • 成员变量有默认值
    • 局部变量没有默认值
  4. 内存中的位置不同
    • 成员变量保存在堆里面
    • 局部变量保存在栈里面
  5. 成员变量修饰符有四种,private 缺省 protected public;局部变量没有修饰符,默认和方法的修饰符权限一样

小汽车例子

/**
	 * 
	 * 汽车图纸就相当于一个类,他是抽象的,不具体的,只是一个对事物的描述
	 * 
	 * 汽车图纸包含两部分:
	 * 属性:颜色、品牌、价格、长度、宽度
	 * 行为:行驶
	 * 
	 * 对应到类里面也是有两部分构成:
	 * 成员变量(属性):直接定义在类下面的变量
	 * 成员方法(行为):去掉static就是成员方法
	 *
	 */
//汽车图纸类
public class Car {
	
	//成员变量
	String color;//颜色
	String brand;//品牌
	double price;//价格
	int length;//长度
	int width;//宽度
	
	//成员方法
	public void run(){
		System.out.println("一辆颜色为:"+color+",品牌为:"+brand+",价格为:"+price
				          +",长度为:"+length+",宽度为:"+width+"的小汽车在马路上呜呜呜的跑着!!");
	}
}
/**
 * 正常情况下一个类是真正使用的,就类似于汽车图纸,他是不能直接行驶,
 * 如果我们想使用这个类,需要根据这个类去创建这个类的对象,就相当于根据
 * 汽车图纸创造汽车。
 * 怎么创建一个类的对象?
 * 类名 对象=new 类名();
 * 
 * 对象名.属性名
 * 对象名.方法名
 *
 */
public class TestCar {

	public static void main(String[] args) {
		//创造一辆小汽车
		Car car=new Car();
		//System.out.println(car.color);
		//赋值
		car.brand="五菱宏光";
		car.color="白色";
		car.length=10;
		car.width=2;
		car.price=1000000;
		System.out.println(car.color);
		//调用方法
		car.run();
		//第二辆
		Car car1=new Car();
		car1.brand="红旗";
		car1.color="黑色";
		car1.length=3;
		car1.width=2;
		car1.price=500000;
		car1.run();
		Car car2=car;
		car2.run();
	}

}

面对对象一大特征

面向对象第一大特征:
 * 当我创建完对象以后,如果直接通过“对象名.属性名”的方式给属性赋值的,可能会出现一些不符合实际情况的问题,
 * 所以我们不考虑使用“对象名.属性名”的方式给属性赋值,而是通过“对象名。方法名”的方式给属性赋值,
 * 因为方法我可以写大量的业务逻辑对属性值进行限制
 1.讲属性私有化
 2.提供公共的get和set方法  get 获取属性值   set修改属性值

构造方法

当我们使用一个类的时候会用到一个特殊的方法,叫构造方法/构造器
构造方法就是专门创建对象的,new后面的这个方法就是构造方法
  1. 怎么创建构造方法

    public 构造方法名(参数){
    }

    • 构建方法名必须和所在类的名字一致
    • 构建方法不能写返回值
  2. 构造方法的作用
    • 无参构造方法作用就是创建对象
    • 有参构造方法在创建对象的同时给属性赋值
  3. 构造方法是可以进行方法重载的
  4. 注意:如果一个类没有自定义构造方法,系统会默认提供一个无参的构造方法;如果自定义了构造方法,系统不会在提供无参构造方法,需要我们手动添加一个无参构造方法

this关键字

/* 当局部变量和成员变量重名时,方法会根据“就近原则”使用局部变量的值,
 * 如果想区分我们可以使用this关键字
 * 
 * 格式:
 * this.成员变量名
 * 
 * this:
 * 1.this可以修饰成员变量、成员方法、构造方法
 * 2.this可以理解为当前正在使用或者正在创建的对象,通过那个对象调用的方法谁就是this
 * 3.可以在构造方法中通过"this(形参)"的方式调用本类中其他构造方法
 * 注意:在构造方法内部必须写在首行
 */
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
智慧校园的建设目标是通过数据整合、全面共享,实现校园内教学、科研、管理、服务流程的数字化、信息化、智能化和多媒体化,以提高资源利用率和管理效率,确保校园安全。 智慧校园的建设思路包括构建统一支撑平台、建立完善管理体系、大数据辅助决策和建设校园智慧环境。通过云架构的数据中心与智慧的学习、办公环境,实现日常教学活动、资源建设情况、学业水平情况的全面统计和分析,为决策提供辅助。此外,智慧校园还涵盖了多媒体教学、智慧录播、电子图书馆、VR教室等多种教学模式,以及校园网络、智慧班牌、校园广播等教务管理功能,旨在提升教学品质和管理水平。 智慧校园的详细方案设计进一步细化了教学、教务、安防和运维等多个方面的应用。例如,在智慧教学领域,通过多媒体教学、智慧录播、电子图书馆等技术,实现教学资源的共享和教学模式的创新。在智慧教务方面,校园网络、考场监控、智慧班牌等系统为校园管理提供了便捷和高效。智慧安防系统包括视频监控、一键报警、阳光厨房等,确保校园安全。智慧运维则通过综合管理平台、设备管理、能效管理和资产管理,实现校园设施的智能化管理。 智慧校园的优势和价值体现在个性化互动的智慧教学、协同高效的校园管理、无处不在的校园学习、全面感知的校园环境和轻松便捷的校园生活等方面。通过智慧校园的建设,可以促进教育资源的均衡化,提高教育质量和管理效率,同时保障校园安全和提升师生的学习体验。 总之,智慧校园解决方案通过整合现代信息技术,如云计算、大数据、物联网和人工智能,为教育行业带来了革命性的变革。它不仅提高了教育的质量和效率,还为师生创造了一个更加安全、便捷和富有智慧的学习与生活环境。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值