栏目分类:
子分类:
返回
名师互学网用户登录
快速导航关闭
当前搜索
当前分类
子分类
实用工具
热门搜索
名师互学网 > IT > 软件开发 > 后端开发 > Java

Java 面向对象

Java 更新时间: 发布时间: IT归档 最新发布 模块sitemap 名妆网 法律咨询 聚返吧 英语巴士网 伯小乐 网商动力

Java 面向对象

目录

1.面向对象

1.1面向对象和面向过程的区别

1.2 构造器

1.3类和对象


 

1.面向对象

1.1面向对象和面向过程的区别

面向过程:   侧重于分步骤,就是以过程为中心,以什么正在发生为主要目标进行编程,“面向过程”就是汽车启动是一个事件,汽车到站是另一个事件。在编程序的时候我们关心的是某一个事件。而不是汽车本身。

面向对象:  侧重于分模块,面向对象是把构成问题事务分解成各个对象,建立对象的目的不是为了完成一个步骤,而是为了描叙某个事物在整个解决问题的步骤中的行为

 面向对象的优点:

优点:易维护、易复用、易扩展,由于面向对象有封装、继承、多态性的特性,可以设计出低耦合的系统,使系统 更加灵活、更加易于维护 

高内聚,低耦合

1.2 构造器

构造方法用来创建并初始化对象

如果一个类中没有编写构造方法,就默认有一个公共的无参构造,但是如果我们创建了一个构造方法,则就不再默认有无参构造。

语法:    权限控制修饰符  方法名(参数){方法体}  方法名必须和类名一致

可以根据需求编写很多个构造方法,就是构造方法重载

public class Constructor {

	public static void main(String[] args) {
		//调用方法m1
		Constructor.m1();
		//创建对象(可以调用)
		Constructor c= new Constructor();
		//对象调用m2方法
		c.m2();
	}
	//有参方法
	public Constructor(int i){
		System.out.println("构造1");
		}
	//无参方法
	public Constructor(){
		System.out.println("构造2");
	}
	//构造方法m1
	public static void m1(){
		System.out.println("静态");
	}
	//构造方法m2
	public void m2(){
		System.out.println("成员");
	}

}

1.3类和对象

类:  是我们思想上对某个事物描述的标准,一般描述这一类事物的属性和特征(是抽象的概念集合,表示的是一个共性的产物,类之中定义的是属性和行为(方法))

对象: 一切皆对象,对象就是个体,就是具体的东西,对象保存了类中的属性的值

可以一句话来总结出类和对象的区别:类是对象的模板,对象是类的实例。类只有通过对象才可以使用,而在开发之中应该先产生类,之后再产生对象。类不能直接使用,对象是可以直接使用的。 

类和对象的关系:类是对象的抽象,而对象是类的具体实例。类是抽象的,不占用内存,而对象是具体的,占用存储空间。类是用于创建对象的蓝图,它是一个定义包括在特定类型的对象中的方法和变量的软件模板。

类定义属性,封装属性,而对象保存属性值

静态属性: 类的属性和功能

动态属性: 类 ,对象的属性和功能

所有对象共有的属性和值 是静态变量

所有对象共有的属性 是成员变量

只要他们是同一个类的对象,他们一定拥有共同的属性

根据不同的属性划分不同的类,根据不同的属性值划分不同的对象

如果该方法中有非静态属性的操作,则该方法定义为成员变量,反之定义为静态变量

package Test;

public class Student {
	static int x=1;
	//静态变量是所有的学生共有的属性和值
			//成员变量是所有学生共有的属性
			//学号
			String id; 
			//姓名
			String name;
			//年龄
			int  age;
			//性别
			boolean sex;
			//住址
			String addr;
			//需求: 打印  你好啊,我叫xxx 我今年xxx岁了
			public void println(){
				System.out.println("你好啊,我叫"+name+"我今年"+age+"岁了");
			}		
			//定义有参的构造方法
	public Student (String id1,String name1, int age1, boolean sex1,String addr1) {
		id = id1;
		 name = name1;
		 age = age1;
		 sex = sex1;
		 addr = addr1;
			
	}
	//强制要去用户输入id号
public Student (String id1){
	id=id1;
}
}

public class Opp {
//	int i = 2;
//	static int x = 1;

	public static void main(String[] args) {
		//创建对象
		Student s1=new Student("00001");
		//调用对象
		s1.name="张三";
		s1.age=18;
		s1.id="18L0752222";
		s1.addr="河北省石家庄市";
		s1.sex=false;
		System.out.println(s1.name);
		System.out.println(s1.age);
		System.out.println(s1.id);
		System.out.println(s1.addr);
		System.out.println(s1.sex);
		s1.println();
		
		Student s2 = new Student("0002");
		s2.name = "李四";
		s2.age = 19;
		System.out.println(s2.id);
		System.out.println(s2.name);
		System.out.println(s2.age);
		System.out.println(s2.sex);
		System.out.println(s2.addr);
		s2.println();
		
		//创建对象有参数
		Student s3 = new Student("00003", "王五", 18, false, "石家庄");
		System.out.println(s3.id);
		System.out.println(s3.name);
		System.out.println(s3.age);
		System.out.println(s3.sex);
		System.out.println(s3.addr);
		s3.println();
		s1.x=2;
		System.out.println(s1.x);
		System.out.println(s2.x);
		System.out.println(Student.x);
		
	}

}

转载请注明:文章转载自 www.mshxw.com
本文地址:https://www.mshxw.com/it/315389.html
我们一直用心在做
关于我们 文章归档 网站地图 联系我们

版权所有 (c)2021-2022 MSHXW.COM

ICP备案号:晋ICP备2021003244-6号