ICode9

精准搜索请尝试: 精确搜索
首页 > 编程语言> 文章详细

JAVA 面向对象、类

2020-01-22 21:06:48  阅读:184  来源: 互联网

标签:JAVA 成员 System 面向对象 void println public out


面向过程:c语言,开发中小型项目的效率很高。
面向对象:Java或C++等语言,适合大型开发场景。

面向过程思想:实现一个功能,看每个步骤怎么做,整体的过程是怎么样的。每一个步骤都需要自己亲力亲为。
面向对象思想:实现一个功能,不看重具体的过程和步骤,关心“谁能帮我做这件事”。
面向对象三大特征:封装性,继承性,多态性。

举例一.把数组转换成指定格式字符串

public class Demo01PrintArry {
	public static void main(String[] args) {
		int[] array = { 10, 20, 30, 40, 50 };

//		面向过程,每一个步骤细节都需要亲自处理
		System.out.print("[");
		for (int i = 0; i < array.length; i++) {
			if (i == array.length - 1) {
				System.out.print(array[i] + "]");
			} else {
				System.out.print(array[i] + ",");
			}
		}

//		面向对象,JDK中有个工具Arrays,可将这个工具将数组转换为指定格式字符串
		// 我自己不做,找Arrays帮我把数组转换成指定格式字符串
		String str = Arrays.toString(array);
		System.out.println(str);
	}
}

类与对象的关系:
现实中的事物分为两部分:
1.属性:事物的特征描述信息,“是什么”。
2.行为:事物的能力行动方案,“能做什么”。

面向对象中,类 是用来模拟现实事物的。
类中也有属性、行为两个组成部分,对象是类的具体实例:
1.类:抽象的,描述信息功能,不能实际使用。是一张电脑设计图。
2.对象:具体的,根据类创造出来的,可以实际使用。也叫做根据类,实例化对象。是一个真正的电脑。

类的定义:类 是用来模拟现实事物的代码手段,事物分为属性和行为。
1.成员变量(属性):在变量的位置直接定义在类中,在方法外,即为成员变量。
2.成员方法(行为):普通方法去掉static关键字,即为成员方法。

一个类通常不能直接使用,如果要使用这个类,通常都需要根据类创建一个真正的对象来使用。
如果根据类创建对象:

类名称 对象名 = new 类名称();

举例.定义一个类用来模拟现实事物“学生”。

//属性:姓名、年龄
//行为:吃饭、睡觉、学习

//对应到类中:
//成员变量(属性):Sting name、int age
//成员方法(行为):
//public void eat(){}   吃饭  
//public void sleep(){}  睡觉
//public void study(){}	学习

public class Student {
	// 成员变量
	String name; // 姓名
	int age; // 年龄

	// 成员方法
	public void eat() {
		System.out.println("吃饭饭!");
	}

	public void sleep() {
		System.out.println("睡觉觉!");
	}

	public void study() {
		System.out.println("学习!");
	}
}
public class Demo02Student {
	public static void main(String[] args) {
		// 创建了一个对象,是一个学生,对象名叫stu1
		// 对象的名称stu1特叫做对象的“引用名”
		Student stu1 = new Student();
		Student stu2 = new Student();
		Student stu3 = new Student();
		Student stu4 = new Student(); // 更多学生对象
	}
}

如何使用创建好的对象?
类当中已经定义好了两个组成部分:成员变量、成员方法
所以,根据类创建出来的对象也有这两个部分。

如何使用对象中的 成员变量?

  • 对象名.成员变量名;
    注意:对应成员变量来说,如果没有赋值,那么将会有一个默认值。例如int为0,String为null。

如何使用对象中的 成员方法?

  • 对象名.成员方法名(参数);

总结:想用谁就点调用谁。

public class Demo03Student {
	public static void main(String[] args) {
		Student stu = new Student(); // 创建一个学生对象

		System.out.println(stu.name); // 默认值null
		System.out.println(stu.age); // 默认值0

		// 改变成员变量的数据值
		stu.name = "鹿晗";
		stu.age = 20;
		System.out.println(stu.name); // 鹿晗
		System.out.println(stu.age); // 20

		// 将对象当中的成员变量,交给name变量
		String name = stu.name;
		System.out.println(name);// 鹿晗

		// 使用对象当中的成员方法
		stu.eat(); // 调用吃饭的成员方法
		stu.sleep();// 调用睡觉的成员方法
		stu.study();// 调用学习的成员方法
	}
}

3.定义一个类,用来模拟手机事物。

  • 手机事物
    属性:品牌、价格、颜色
    行为:打电话、发短信

  • 对应到类中

  • 成员变量:
    String brand; 品牌
    double price; 价格
    String color; 颜色

  • 成员方法:
    public void call(Sting who) {…} 打电话的方法
    public void sendMessage() {…} 群发短信

public class Phone {
	String brand; // 品牌
	double price; // 价格
	String color; // 颜色

	public void call(String who) {
		System.out.println("给" + who + "打电话");
	}
	public void sendMessage() {
		System.out.println("群发短信!");
	}
}
  • 如何使用定义好的类?
    类既是一种引用数据类型,使用起来可以分成三步:
    1.导包
    如果需要使用的目标类,和当前类(有main方法)位于同一个包之下,那么可以省略导包
    否则需要使用import导包语句
    2.创建
    类名称 对象名 = new 类名称();
    3.使用
    使用成员变量:对象名.成员变量名
    调用成员方法:对象名.成员方法名(参数)
public class Demo04PhoneOne {
	public static void main(String[] args) {
		//根据Phone类创建一个手机对象,名叫one
		Phone one = new Phone();
		
		//访问成员变量的默认值
		System.out.println(one.brand);//null
		System.out.println(one.color);//null
		System.out.println(one.price);//0.0
		
		one.brand = "苹果";
		one.price = 8888;
		one.color = "土豪金";
		System.out.println(one.brand);//苹果
		System.out.println(one.color);//土豪金
		System.out.println(one.price);//8888.0
		
		//调用成员方法
		one.call("乔布斯");
		one.sendMessage();
		
		//将one中存储的地址值赋值交给two一份
		//one跟two用的同一个对象,好比买卖二手房
		Phone two = one;
		System.out.println(two.brand);//苹果
		System.out.println(two.color);//土豪金
		System.out.println(two.price);//8888.0
		
		two.brand = "三星";
		two.price = 6666;
		two.color = "星空粉";
		
		System.out.println(two.brand);//三星
		System.out.println(two.color);//星空粉
		System.out.println(two.price);//6666.0
		
		System.out.println(one.brand);//三星
		System.out.println(one.color);//星空粉
		System.out.println(one.price);//6666.0
	}
}
August98_LYH 发布了40 篇原创文章 · 获赞 5 · 访问量 1万+ 私信 关注

标签:JAVA,成员,System,面向对象,void,println,public,out
来源: https://blog.csdn.net/qq_43472877/article/details/104072328

本站声明: 1. iCode9 技术分享网(下文简称本站)提供的所有内容,仅供技术学习、探讨和分享;
2. 关于本站的所有留言、评论、转载及引用,纯属内容发起人的个人观点,与本站观点和立场无关;
3. 关于本站的所有言论和文字,纯属内容发起人的个人观点,与本站观点和立场无关;
4. 本站文章均是网友提供,不完全保证技术分享内容的完整性、准确性、时效性、风险性和版权归属;如您发现该文章侵犯了您的权益,可联系我们第一时间进行删除;
5. 本站为非盈利性的个人网站,所有内容不会用来进行牟利,也不会利用任何形式的广告来间接获益,纯粹是为了广大技术爱好者提供技术内容和技术思想的分享性交流网站。

专注分享技术,共同学习,共同进步。侵权联系[81616952@qq.com]

Copyright (C)ICode9.com, All Rights Reserved.

ICode9版权所有