欢迎来到天天文库
浏览记录
ID:34409439
大小:431.36 KB
页数:30页
时间:2019-03-05
《02面向对象的程序设计1》由会员上传分享,免费在线阅读,更多相关内容在教育资源-天天文库。
1、本课内容本课内容§典型的程序设计方式§面向对象思想§类和对象§构造方法§对象的创建和使用§信息的封装和隐藏§JavaAPI典型的程典型的程序序设计方式设计方式§面向过程的程序设计§面向对象程序设计Object-OrientedProgramming§面向组件编程§面向服务编程面向过程编程的思维方式•更面向硬件设备,用函数思考问题,强调步骤、处理过程和逻辑•voidmain(){if(flag==true){alarmON();}else{alarmON();}}各步骤之间依赖性很强,有严格的先后次
2、序面向对象的思想概述更加面向所要解决的问题,按功能划分问题,而不是过程、步骤1.面向对象的编程思想力图使计算机语言中对事物的的描述与现实世界中该事物的本来面目尽可能的一致2.面向对象的思维方式更符合人们的日常生活3.生活中的思维==编程思维好处:系统可扩展性提高,便于维护面向对象编程的思维方式:用对象思考买电脑场景事件中的部分参与者合作学生汽车面向对象的核心概念类:抽象的概念,不具体,不明确对象:具体的事物,也叫做实例思维场景猪,pig?•万物皆对象•程序是对象的集合,它们彼此发送消息来互相通信•
3、每个对象都有它确定的类型如何描述一个对象•对象具有什么样的外部特征(状态)?•对象具有什么样的行为?学生Java描述•学生(类):对象所属的类别类对象的表面特征(状态)属性对象的行为方法classStudent{privateintage;privateStringname;publicvoidspeak(){System.out.println(“太酷了!”);}}类的语法规则语法格式:[]class{[4、>][][]}举例:publicclassStudent{privateintage;publicvoidshowAge(inti){age=i;}}声明属性语法格式:[]type=[defaultvalue];举例:publicclassStudent{privateintage;publicStringname=“Lila”;}声明方法语法格式:[5、fiers>]([]){[]}举例:publicclassStudent{privateintage;publicintgetAge(){returnage;}publicvoidsetAge(inti){age=i;}}类中的基本要素1.属性2.方法问题:类是抽象的,属性的取值到底是多少?类如何发挥它的作用?对象的创建和使用创建对象的语法:new+构造方法;publicclassTest{publicstatic6、voidmain(String[]args){Studentd=newStudent();d.setAge(42);System.out.println("本人年龄:"+d.getAge());}}构造方法§功能:与new配合来创建对象,同时可以对属性进行初始化§语法格式:[]([]){[]}§举例:publicclassStudent{privateintage;publicStudent(){age=17、8;}publicStudent(inti){age=i;}publicvoidsetAge(inti){age=i;}}2-4以下类中无构造方法,正确否?publicclassStudent{privateintage;privateStringname;publicvoidspeak(){System.out.println(“太酷了!”);}}默认的构造方法§Java语言中,每个类都至少有一个构造方法;§如果类的定义者没有显式的定义任何构造方法,系统将自动提供一个默认的构造方法:–默认构造方8、法没有参数–默认构造方法方法体为空§Java类中,一旦类的定义者显式定义了一个或多个构造方法,系统将不再提供默认的构造方法;默认的构造方法类的定义:publicclassStudent{privateintage;publicvoidsetAge(intw){age=w;}}等价于:publicclassStudent{privateintagepublicStudent(){}publicvoidsetAge(intw){age=w;}}注意:publicclassStudent
4、>][][]}举例:publicclassStudent{privateintage;publicvoidshowAge(inti){age=i;}}声明属性语法格式:[]type=[defaultvalue];举例:publicclassStudent{privateintage;publicStringname=“Lila”;}声明方法语法格式:[5、fiers>]([]){[]}举例:publicclassStudent{privateintage;publicintgetAge(){returnage;}publicvoidsetAge(inti){age=i;}}类中的基本要素1.属性2.方法问题:类是抽象的,属性的取值到底是多少?类如何发挥它的作用?对象的创建和使用创建对象的语法:new+构造方法;publicclassTest{publicstatic6、voidmain(String[]args){Studentd=newStudent();d.setAge(42);System.out.println("本人年龄:"+d.getAge());}}构造方法§功能:与new配合来创建对象,同时可以对属性进行初始化§语法格式:[]([]){[]}§举例:publicclassStudent{privateintage;publicStudent(){age=17、8;}publicStudent(inti){age=i;}publicvoidsetAge(inti){age=i;}}2-4以下类中无构造方法,正确否?publicclassStudent{privateintage;privateStringname;publicvoidspeak(){System.out.println(“太酷了!”);}}默认的构造方法§Java语言中,每个类都至少有一个构造方法;§如果类的定义者没有显式的定义任何构造方法,系统将自动提供一个默认的构造方法:–默认构造方8、法没有参数–默认构造方法方法体为空§Java类中,一旦类的定义者显式定义了一个或多个构造方法,系统将不再提供默认的构造方法;默认的构造方法类的定义:publicclassStudent{privateintage;publicvoidsetAge(intw){age=w;}}等价于:publicclassStudent{privateintagepublicStudent(){}publicvoidsetAge(intw){age=w;}}注意:publicclassStudent
5、fiers>]([]){[]}举例:publicclassStudent{privateintage;publicintgetAge(){returnage;}publicvoidsetAge(inti){age=i;}}类中的基本要素1.属性2.方法问题:类是抽象的,属性的取值到底是多少?类如何发挥它的作用?对象的创建和使用创建对象的语法:new+构造方法;publicclassTest{publicstatic
6、voidmain(String[]args){Studentd=newStudent();d.setAge(42);System.out.println("本人年龄:"+d.getAge());}}构造方法§功能:与new配合来创建对象,同时可以对属性进行初始化§语法格式:[]([]){[]}§举例:publicclassStudent{privateintage;publicStudent(){age=1
7、8;}publicStudent(inti){age=i;}publicvoidsetAge(inti){age=i;}}2-4以下类中无构造方法,正确否?publicclassStudent{privateintage;privateStringname;publicvoidspeak(){System.out.println(“太酷了!”);}}默认的构造方法§Java语言中,每个类都至少有一个构造方法;§如果类的定义者没有显式的定义任何构造方法,系统将自动提供一个默认的构造方法:–默认构造方
8、法没有参数–默认构造方法方法体为空§Java类中,一旦类的定义者显式定义了一个或多个构造方法,系统将不再提供默认的构造方法;默认的构造方法类的定义:publicclassStudent{privateintage;publicvoidsetAge(intw){age=w;}}等价于:publicclassStudent{privateintagepublicStudent(){}publicvoidsetAge(intw){age=w;}}注意:publicclassStudent
此文档下载收益归作者所有