欢迎来到天天文库
浏览记录
ID:58673132
大小:615.50 KB
页数:97页
时间:2020-10-05
《第四Java面向对象编程基础ppt课件.ppt》由会员上传分享,免费在线阅读,更多相关内容在教育资源-天天文库。
1、3.1java的类3.1.1创建对象与定义构造函数3.1.2系统定义的类3.2方法3.3静态成员3.4包3.5访问控制符提纲Java类掌握类的定义形式,java类的结构掌握对象实例化方法教学要求类是定义一个对象的数据和方法的蓝本;对象代表现实世界中可以明确标识的任何事物,包括状态和行为用户定义的类定义格式:[修饰符]class类名[extends父类名][implements接口名]{类属性声明;类方法声明;}用户定义的类修饰符:---访问控制符---抽象类(abstract)---最终类(final)classjuxing{intx;inty;intS(){retur
2、nx*y;}}属性方法类定义示例类定义示例classPhoneCard{longcardNumber;privateintpassword;doublebalance;StringconnectNumber;booleanconnected;booleanperformConnection(longcn,intpw){………}doublegetBalance(){……}voidperformDial(){…….}}属性方法创建对象格式:类名新建对象名=new构造函数(参数);eg:Phonecardmycard=newphonecard()2使用对象的数据和方法publ
3、icclasstestcircle{publicstaticvoidmain(String[]args){circlemycircle=newcircle();System.out.println("theareaofthecircleofradius"+mycircle.radius+"is"+mycircle.findarea());}}classcircle{doubleradius=1.0;doublefindarea(){returnradius*radius*3.14159;}}objectname.method引用对象的方法objectname.data引
4、用对象的数据构造函数构造函数名与类名同名,缺省形式:A(){}构造函数没有返回类型构造函数主要是完成对象的初始化工作构造函数在构造类对象时被系统自动调用执行,不可被显式调用执行构造函数示例classPhoneCard{longcardNumber;privateintpassword;doublebalance;PhoneCard(longlc,intip,doubledb){cardNumber=lc;password=ip;balance=db;}}无返回类型没有return语句和类名一致PhoneCardm1=newPhoneCard();PhoneCard(){
5、}PhoneCardm1=newPhoneCard(5,6,82.5);例:使用构造函数publicclassTestCircleWithConstructors{publicstaticvoidmain(String[]args){CirclemyCircle=newCircle(5.0);System.out.println("Theareaofthecircleofradius"+myCircle.radius+"is"+myCircle.findArea());CircleyourCircle=newCircle();System.out.println("Th
6、eareaofthecircleofradius"+yourCircle.radius+"is"+yourCircle.findArea());}}classCircle{doubleradius;Circle(){radius=1.0;}Circle(doubler){radius=r;}doublefindArea(){returnradius*radius*3.14159;}}构造函数示例类中变量的默认初始化Java中,一个类中如果没有定义构造方法,则编译器会自动生成一个没有参数的构造方法,用来初始化类对象,并将类中变量自动初始化为该类型的默认值:①整型初始化为0
7、;②实型初始化为0.0f、0.0d;③逻辑型初始化为false;④字符型初始化为'u0000';⑤类对象初始化为null,表明不指向任何内存地址的引用如果类中定义了构造方法,则不会自动生成没有参数的构造方法。classDepartment{intm_DeptNo=10;Stringm_DeptName;intm_DeptTotalEmp=30;Department(intdno,Stringdname,inttotal){m_DeptNo=dno;m_DeptName=dname;m_DeptTotalEmp=total;}}Depar
此文档下载收益归作者所有