文档详情

00面向对象的程序设计

无***
实名认证
店铺
PPT
1.36MB
约25页
文档ID:232522583
00面向对象的程序设计_第1页
1/25

面向对象程序设计初步(上)面向对象程序设计初步(上)ID:SCSJ001-Java Basic Syntax面向对象程序设计初步面向对象程序设计初步(上)面向对象程序设计初步(上)v程序设计简史程序设计简史v对象、类对象、类v类的定义类的定义vJava中类、属性、方法的定义中类、属性、方法的定义v类的构造器类的构造器2011-05-032面向对象程序设计初步面向对象的程序设计面向对象的程序设计v程序设计简史程序设计简史过程式程序设计结构化程序设计面向对象程序设计2011-05-033面向对象程序设计初步对象对象vEverything is Object:万事万物皆对象万事万物皆对象v面向对象的编程(面向对象的编程(OOPOOP)思想力图使对计算机语言中对事物的)思想力图使对计算机语言中对事物的的描述与现实世界中该事物的本来面目尽可能的一致的描述与现实世界中该事物的本来面目尽可能的一致vClass/Object:类类(class)(class)和对象和对象(object)(object)是面向对象方法的是面向对象方法的核心概念类是对一类事物描述,是抽象的、概念上的定义;核心概念类是对一类事物描述,是抽象的、概念上的定义;对象是实际存在的该类事物的每个个体,因而也称实例对象是实际存在的该类事物的每个个体,因而也称实例(instance)(instance)。

2011-05-034面向对象程序设计初步作为对象蓝本的类作为对象蓝本的类v类类(Class)是用来描述一个对象是用来描述一个对象(Object):类描述了每个对象应包括的数据类描述了每个对象的行为特征2011-05-035面向对象程序设计初步类的定义类的定义v类包括两方面的内容:类包括两方面的内容:属性:用来描述对象的数据元素称为对象的属性(也称为数据/状态)方法:对对象的属性进行的操作称为对象的方法(也称为行为/操作)2011-05-036面向对象程序设计初步类的定义(案例类的定义(案例2-1)v以一个以一个“学生学生”实体为例,来说明类的定义实体为例,来说明类的定义v学生的基本特征:学生的基本特征:学号年级姓名性别2011-05-037面向对象程序设计初步Java类的声明类的声明v语法格式:语法格式:class v举例:举例:public class Student private int age;public void setAge(int _age)age=_age;2011-05-038面向对象程序设计初步属性的声明属性的声明语法格式:语法格式:typetype =defaultValuedefaultValue;举例:举例:public class public class StudentStudent private private intint age;age;public public String name=String name=“Alex“Alex WenWen”;”;2011-05-039面向对象程序设计初步方法的声明方法的声明语法格式:语法格式:()举例:举例:public class public class StudentStudent private int age;public int getAge()return age;public void setAge(int _age)age=_age;2011-05-0310面向对象程序设计初步构造器的声明(案例构造器的声明(案例2-2)v构造器的声明语法:构造器的声明语法:()v构建器名称必须和类名称一致构建器名称必须和类名称一致v一个类可以有多个构建器,但这些构造器的参数列表必须不同一个类可以有多个构建器,但这些构造器的参数列表必须不同v例如:例如:public class Dog private int weight;public Dog(int w)weight=w;2011-05-0311面向对象程序设计初步对象的创建和使用对象的创建和使用v在在Java中,使用中,使用new 关键字来创建一个对象(实例化一关键字来创建一个对象(实例化一个类),个类),new后面跟上一个构造器后面跟上一个构造器每个类都至少有一个构造器,如果没有定义构造器,则系统将自动提供一个默认的不带任何参数的构造器,如果类没有定义构造器,可以用这个默认的构造起来生成一个对象v使用使用“.”操作符来访问对象的成员,包括对象方法和对操作符来访问对象的成员,包括对象方法和对象属性象属性.2011-05-0312面向对象程序设计初步小结小结v面向对象的分析和设计简介面向对象的分析和设计简介v类和对象类和对象v构造器构造器v对象的创建和使用对象的创建和使用2011-05-面向对象的程序设计(下)面向对象的程序设计(下)ID:SCSJ001-Java Basic Syntax面向对象程序设计初步信息的隐藏(案例信息的隐藏(案例2-5)v隐藏:指的是对象的一种保护机制,使得它的属性或方法隐藏:指的是对象的一种保护机制,使得它的属性或方法不被外部的程序直接访问不被外部的程序直接访问v使用者对类内部定义的数据使用者对类内部定义的数据(对象的成员变量对象的成员变量)的直接操作的直接操作会导致数据的错误、混乱或安全性问题。

会导致数据的错误、混乱或安全性问题public class Student public int age;public class StudentTest public static void main(String args)Student s=new Student();/合“法”但不合理的设置s.age=1000;2011-05-0315面向对象程序设计初步信息的封装信息的封装封封装装指指的的是是将将对对象象的的状状态态信信息息(属属性性)和和行行为为(方方法法)捆捆绑为一个逻辑单元的机制绑为一个逻辑单元的机制Java中中通通过过将将数数据据封封装装、声声明明为为私私有有的的(private),再再提提供供一一个个或或多多个个公公开开的的(public)方方法法实实现现对对该该属属性性的的操作,以实现下述目的:操作,以实现下述目的:隐藏一个类的实现细节;防止对封装数据的未经授权的访问使用者只能通过事先定制好的方法来访问数据,可以方便地加入控制逻辑,限制对属性的不合理操作;有利于保证数据的完整性;便于修改,增强代码的可维护性;2011-05-0316面向对象程序设计初步Java源文件的基本结构源文件的基本结构v源文件的基本语法:源文件的基本语法:+v例如:例如:package school;import java.util.List;import java.io.*;public class Student private List Teacher;public void printSheet(Writer output)2011-05-0317面向对象程序设计初步package语句(案例语句(案例2-6)vpackage语句的语法为:语句的语法为:package .*;v举例:举例:package cn.edu.tsinghua.college;public class Student 2011-05-0318面向对象程序设计初步package语句语句v打成包后的类的编译和执行:打成包后的类的编译和执行:如果在程序Student.java中已定义了包com.softeem.jbs,编译时采用如下方式:javac Student.java 则编译器会在当前目录下生成则编译器会在当前目录下生成Student.class文件,如果程序不在文件,如果程序不在comsofteemjbs目录下,则必须目录下,则必须再在适合位置再在适合位置(destpath目目录录)手动创建这些手动创建这些子目录,将子目录,将Student.class复制复制到该到该目录下,这目录下,这样,这个类才可以被使用。

样,这个类才可以被使用javac-d destpath Student.java则编译器会自动在则编译器会自动在destpath目录下建立子目录目录下建立子目录comsofteemjbs,并将生成的并将生成的.class文件都放到文件都放到destpath comsofteemjbs下下(destpath目录必须存在目录必须存在)e:javac d e:Student.java命令执行会在源代码同级目录按照包结构建立文件夹命令执行会在源代码同级目录按照包结构建立文件夹执行执行e:java com.softeem.jbs.Student2011-05-0319面向对象程序设计初步import语句(案例语句(案例2-7)v在需要使用不同的包中的类时,使用在需要使用不同的包中的类时,使用import语语句来引入所需要的类句来引入所需要的类vimport 语句的语法为:语句的语法为:import .;import.*;2011-05-0320面向对象程序设计初步import语句语句v编译器如何寻找编译器如何寻找import语句中指定的包或者类语句中指定的包或者类?在CLASSPATH指定的路径下寻找默认情况下,系统会自动引入java.lang包中的所有类2011-05-0321面向对象程序设计初步常用的包常用的包vjava.lang-包含一些包含一些Java语言的核心类,如语言的核心类,如String、Math、Integer、System和和Thread,提供常用功能。

提供常用功能vjava.awt-包含了构成抽象窗口工具集(包含了构成抽象窗口工具集(abstract window toolkits)的多个类,这些类被用来构建和)的多个类,这些类被用来构建和管理应用程序的图形用户界面管理应用程序的图形用户界面(GUI)vjava.applet-包含包含applet运行所需的一些类运行所需的一些类包含执行与网络相关的操作的类包含执行与网络相关的操作的类vjava.io-包含能提供多种输入包含能提供多种输入/输出功能的类输出功能的类vjava.util-包含一些实用工具类,如定义系统特性、包含一些实用工具类,如定义系统特性、使用与日期日历相关的函数使用与日期日历相关的函数2011-05-0322面向对象程序设计初步面向对象编程的术语面向对象编程的术语v类(类(class)v对象(对象(object)也称:实例(instance)v属性(属性(attribute)也称:成员变量、实例变量(instance variable)v方法(方法(method)v构造器(构造器(constructor)v包(包(package)2011-05-0323面向对象程序设计初步作业作业v创建汽车类创建汽车类,找出汽车的找出汽车的10个属性和个属性和2个方法个方法;v创建创建Employ类类,包含姓名包含姓名,性别性别,年龄年龄,籍贯籍贯,月薪月薪等属性等属性,创建测试类创建测试类,实例化实例化10个个Employ,具有具有不同的年龄不同的年龄,月薪月薪,求求10个对象一个月的总工资个对象一个月的总工资;v找出找出ArrayList在在Java的哪个包里面的哪个包里面.2011-05-0324面向对象程序设计初步小结小结v信息的封装和隐藏信息的封装和隐藏vJava源文件结构源文件结构vJDK中常用的包中常用的包2011-05-0325。

下载提示
相关文档
正为您匹配相似的精品文档