第六,七章复习作业

1.理解生活中类和对象

2.介绍面向对象编程

3.使用java创建类和对象

 

 

类和对象的关系

类是抽象的概念,是对象的模板

对象是具体的事物,是类的具体实例

面向对象编程

面向对象编程是利用编程方式体现出现实中类与对象

从已有现实的类中定义程序中的类(Class)

从类(Class)创建(实例化)具体的对象(Object)

创建类和对象

 

 

 

 

 

 成员变量

成员变量就是隶属与对象的变量

成员变量用于保存对象的静态特征

同类型的不同第项拥有相同的成员变量,但值彼此独立

成员变量的定义

 成员变量的使用

package ketanglianxi;

public class Dog {
	String name;
	int age;
	float weight;
	public static void main(String[] args) {
		Dog duoduo=new Dog();
		duoduo.name="多多";
		duoduo.age=6;
		duoduo.weight=13.5f;
		Dog lucky=new Dog();
		lucky.name="Lucky";
		lucky.age=3;
		lucky.weight=10.2f;
		System.out.println(duoduo.name+"今天"+duoduo.age+"岁了");
		System.out.println(lucky.name+"体重"+duoduo.weight+"千克");
	}

}

输出语句

 方法-Method

什么是方法

方法1(Method)是用于完成特定功能的整段代码

package ketanglianxi;

public class MethodSample01 {
	public static void main(String[] args) {
		int a=10;
		if(a%2==0){
			System.out.println(a+"是偶数");
		}else {
			System.out.println(a+"是奇数");
		}
		int b=5;
		if(b%2==0) {
			System.out.println(b+"是偶数");
		}else {
			System.out.println(b+"是奇数");
		}
	}

}

 

package ketanglianxi;

public class MethodSample01 {
	public String isOddNumber(int num) {
		if(num%2==0) {
			return"偶数";
		}else {
			return"奇数";
		}
	}
	public static void main(String[] args) {
	//	int a=10;
	//	if(a%2==0){
	//		System.out.println(a+"是偶数");
	//	}else {
	//		System.out.println(a+"是奇数");
	//	}
	//	int b=5;
	//	if(b%2==0) {
	//		System.out.println(b+"是偶数");
	//	}else {
	//		System.out.println(b+"是奇数");
	//	}
		int a=10;
		MethodSample01 methodSample01=new MethodSample01();
		String r1=methodSample01.isOddNumber(a);
		System.out.println(a+"是"+r1);
		int b=5;
		String r2=methodSample01.isOddNumber(b);
		System.out.println(b+"是"+r2);
				}

	}

运行结果

 

包-Package

 包-package

把功能相似或相关的类组织在同一个包中

包也采用了树形目录的存储方式

通过包也可限定类的访问权限

导包:

 

 

 

 

 

 

 访问修饰符

访问修饰符用于控制类,成员变量,方法的访问范围

 

package com.imooc.object.sample1;

public class PackageSample01 { 
	//public代表其他任何类都能访问的成员变量
	public String name;
	//private代表只能在当前类中使用
	private void sayHello() {
		System.out.println("Hello world!");
	}
	//不写访问修饰符代表是默认修饰符,表示只能被包中其他类访问
	void sayGoodbye() {
		System.out.println("Good bye!");
	}
	public static void main(String[] args) {
		PackageSample01 PackageSample01=new PackageSample01();
		PackageSample01.sayHello();
	}
}

面向对象特征之封装

 现实中的封装

 

 

 

 

 

对成员变量进行读写封装

 

package com.imooc.objectproject.sample3;

public class Algorithm {
	//成员变量私有化
	private String owner;//所有者
	private String areaCode = "86";//国家区号private long mobileNumber;//手机号
	//getter方法,getter方法用于读取成员变量的内容
	// getter书写格式: public成员变量类型 get成员变量名(),PS:首字母大写public string getOwner (){
	//this关键字代表当前对象的...return this.owner;
	//setter方法,setter方法用于设置成员变量的内容
	// setter书写格式: public void set成员变量名(新的数据参数)public void setowner (String owner){
	this.owner = owner;
	public String getAreaCode(){
	this.owner =owner;
	}
	public String getAreaCode1 (){
	return this.areaCode;
	}}

封装原则:将不需要对外提供的内容都隐藏起来,把属性都隐藏,提供公共方法对其访问。

封装的好处(优点):

1)通过隐藏对象的属性来保护对象内部的状态(隐藏信息、实现细节)。

2)提高了代码的可用性和可维护性,因为对象的行为可以被单独的改变或者是扩展(将变化隔离,类内部的结构可以自由修改,增加内部实现部分的可替换性)。

3)禁止对象之间的不良交互提高模块化(良好的封装能够减少耦合)。

4)可以对成员变量进行更精确的控制。

5)容易保证类内部数据间的一致性,从而提高软件的可靠性。

package com.imooc.objectproject.sample3;

public class Algorithm {
		protected String title;protected String color;protected String movie;public void description(){
		System.out.println("型号:"+title);System.out.println("颜色:"+ color);
		System. out.println("首次出现电影:" +movie);
		}
		private void fire(){
		System. out.println("利用手臂燃料泵射出火焰");
		}
		public static void main (String[] args){
		Algorithm mark1 =new Algorithm();
		mark1 .color ="银灰色";
		mark1 .movie ="钢铁侠1";
		}}

继承错误

package com.imooc.objectproject.sample3;
//extends关键字用于类的继承
	//extends关键字后面是"父类" , extends关键字前是"子类"
	//子类会继承父类的(default)/protected/public修饰的成员变量与方法public class Hulk extends Mark1{

public class Algorithm {
	public static void main (String[] args){
	Algorithm hulk = new Algorithm();
	hulk.title="反浩克装甲";hulk.color ="红色";
	hulk.movie="复仇者联盟3";
	}

package com.imooc.objectproject.sample3;
	public class Mark85 extends Markl{
		private void createShield(){
			System.out.println("利用纳米技术生成防御护盾");
			public static void main(String[] args){
				Mark85 mark85 = new Mark85();
				mark85.title ="马克85型";
				mark85.color ="红色";
				mark85.movie ="复仇者联盟4";mark85.description();
				mark85.createshield();
			}
}

面向对象特征之多态

 

 

 

package com.imooc.objectproject.sample5;

public class Language {
	public void voice();
	}

package com.imooc.objectproject.sample5;
	
	public class Chinese implements Language{	
		public void voice (){
			System.out.println("你好,有什么可以帮到您的?");
		}
}

package com.imooc.objectproject.sample5;

	public class English implements Language{
		//@override
		public void voice(){
			System.out.println("Hi, may I help you?");
}}

 ArrayList类


ArrayList是Java内置的数据集合,用于存储多个数据
ArrayList是数组替代品,提供了更多的数据操作方法
ArrayList几乎是每一个项目中必用的类

 

package com.imooc.objectproject.sample5;

public class ArrayList {
	public static void main(String[] args) {
		ArrayList bookList =new ArrayList();
		bookList.add("红楼梦");
		bookList.add("西游记");
		bookList.add("水浒传");
		bookList.add("三国志");
		System.out.println(bookList);
	}

	private void add(String string) {
		// TODO Auto-generated method stub
		
	}

}
package com.imooc.objectproject.sample5;

public class ArrayList {public static void main (String [ ] args){
	List bookList = new ArrayList ( ) ;
	bookList.add ("红楼梦");
	bookList .add ( "西游记");
	bookList.add ( "水浒传");
	bookList.add( "三国志");
	bookList.add ( index:o,element:"镜花缘");
	System.out.println (bookList) ;
	}}

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值