Java面向对象编程思想,类如何被定义与使用

面向对象:

只要具有特性和功能的,都叫做对象。
让对象之间产生关系,就是面向对象编程。
面向对象是软件开发方法,是一种编程思想,是一种对现实世界理解和抽象的方法,是计算机编程技术发展到一定阶段的产物。

面向过程强调步骤,面向对象强调对象

类与对象:

相关概念:

万物皆对象
任何对象,一定具有自己的特征(属性,一般为名词,代表对象有什么)和行为(方法,一般为动词,代表对象能做什么)
例如手机,属性:品牌、颜色、价格、重量等;方法:发短信、接打电话

图纸:类;工厂:构造函数

汽车设计图纸规定了汽车所有的组成部分,即现实对象的模板,对应程序中的模板,即类
根据图纸创造出来的汽车,对应程序中的对象

成员变量,自动初始化
局部变量,必须初始化,作用于具体的代码块
两个变量可以同名

类的定义:

package lession6;

/**
 * 
 * @author ithinkihere 定义当前类是Dog类 属性: 1.名字 2.品种 3.年龄 4.性别 5.毛色
 * 
 *         方法: 1.吃 2.睡 3.叫
 * 
 *         属性:通过变量表示,又称实例变量 语法:数据类型 属性名 位置:类的内部,方法的外部
 * 
 *         方法:通过函数表示,又称实例方法
 *
 */
public class Dog {
	// 这里没有main方法
	// 不需要为属性赋值
	// 全局变量默认自动初始化
	String name;
	String bread;
	int age;
	String sex;
	String color;

	public void eat() {
		System.out.println("eating!");
	}

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

	public void cry() {
		System.out.println("crying!");
	}
}

类的使用:

package lession6;

/**
 * 
 * @author ithinkihere 使用Dog类创建具体的狗对象 1.通过new 2.为对象的属性赋值 3.输出测试
 *
 */
public class DogDemo {
	public static void main(String[] args) {
		// 1.new
		Dog dog = new Dog();
		// 2.查看默认值
		System.out.println(
				"名字:" + dog.name + ",品种:" + dog.bread + ",年龄:" + dog.age + ",性别:" + dog.sex + ",毛色:" + dog.color);
		// 调用方法
		dog.eat();
		dog.sleep();
		dog.cry();
		// 3.特征赋值
		dog.name = "旺财";
		dog.bread = "土狗";
		dog.age = 1;
		dog.sex = "母";
		dog.color = "棕黄";
		// 4.查看赋值后的对象
		System.out.println(
				"名字:" + dog.name + ",品种:" + dog.bread + ",年龄:" + dog.age + ",性别:" + dog.sex + ",毛色:" + dog.color);
		// 5.创新新的对象
		Dog dog1 = new Dog();
		// 6.特征赋值
		dog1.name = "二哈";
		dog1.bread = "哈士奇";
		dog1.age = 2;
		dog1.sex = "公";
		dog1.color = "黑白花花";
		// 7.查看赋值后的对象
		System.out.println(
				"名字:" + dog1.name + ",品种:" + dog1.bread + ",年龄:" + dog1.age + ",性别:" + dog1.sex + ",毛色:" + dog1.color);
	}
}

补充示例:

package lession6;

/**
 * 
 * @author ithinkihere 1.创建类 2.展示里面的属性 a.输出 b.返回 3.获取属性和设置属性 a.获取:getXXX
 *         b.设置:setXXX
 * 
 *
 */
public class StudentDemo {
	// java文件的文件名必须要和被public修饰的类的类名保持一致
	public static void main(String[] args) {
		// 定义张三
		Student s1 = new Student();
		s1.name = "张三";
		s1.age = 20;
		s1.className = "6班";
//		System.out.println(s1.name+","+s1.age+","+s1.className);
//		s1.showName();
//		s1.showAge();
//		s1.showClassName();
		System.out.println(s1.getName() + "," + s1.getAge() + "," + s1.getClassName());
		s1.setName("张三三");
		System.out.println(s1.getName() + "," + s1.getAge() + "," + s1.getClassName());

		// 定义李四
		Student s2 = new Student();
		s2.name = "李四";
		s2.age = 22;
		s2.className = "8班";
//		System.out.println(s2.name+","+s2.age+","+s2.className);
//		s2.showName();
//		s2.showAge();
//		s2.showClassName();
		System.out.println(s2.getName() + "," + s2.getAge() + "," + s2.getClassName());
	}

}

class Student {
	String name;
	int age;
	String className;

	public String getName() {
		return name;
	}

	public int getAge() {
		return age;
	}

	public String getClassName() {
		return className;
	}

//	public void showName() {
//		System.out.println(name);
//	}
//	
//	public void showAge() {
//		System.out.println(age);
//	}
//	
//	public void showClassName() {
//		System.out.println(className);
//	}
	public void setName(String newName) {
		name = newName;
	}
}

 

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值