欢迎来到淘文阁 - 分享文档赚钱的网站! | 帮助中心 好文档才是您的得力助手!
淘文阁 - 分享文档赚钱的网站
全部分类
  • 研究报告>
  • 管理文献>
  • 标准材料>
  • 技术资料>
  • 教育专区>
  • 应用文书>
  • 生活休闲>
  • 考试试题>
  • pptx模板>
  • 工商注册>
  • 期刊短文>
  • 图片设计>
  • ImageVerifierCode 换一换

    教学课件第2章 类和对象.ppt

    • 资源ID:25370845       资源大小:594.50KB        全文页数:61页
    • 资源格式: PPT        下载积分:30金币
    快捷下载 游客一键下载
    会员登录下载
    微信登录下载
    三方登录下载: 微信开放平台登录   QQ登录  
    二维码
    微信扫一扫登录
    下载资源需要30金币
    邮箱/手机:
    温馨提示:
    快捷下载时,用户名和密码都是您填写的邮箱或者手机号,方便查询和重复下载(系统自动生成)。
    如填写123,账号就是123,密码也是123。
    支付方式: 支付宝    微信支付   
    验证码:   换一换

     
    账号:
    密码:
    验证码:   换一换
      忘记密码?
        
    友情提示
    2、PDF文件下载后,可能会被浏览器默认打开,此种情况可以点击浏览器菜单,保存网页到桌面,就可以正常下载了。
    3、本站不支持迅雷下载,请使用电脑自带的IE浏览器,或者360浏览器、谷歌浏览器下载即可。
    4、本站资源下载后的文档和图纸-无水印,预览文档经过压缩,下载后原文更清晰。
    5、试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓。

    教学课件第2章 类和对象.ppt

    PPT模板下载:/moban/ 行业PPT模板:/hangye/ 节日PPT模板:/jieri/ PPT素材下载:/sucai/PPT背景图片:/beijing/ PPT图表下载:/tubiao/ 优秀PPT下载:/xiazai/ PPT教程: /powerpoint/ Word教程: /word/ Excel教程:/excel/ 资料下载:/ziliao/ PPT课件下载:/kejian/ 范文下载:/fanwen/ 试卷下载:/shiti/ 教案下载:/jiaoan/ 字体下载:/ziti/ 教学课件第2章 类和对象2.1定义Java的类2.2创建对象2.3方法调用2.4访问数据成员2.5包的概念2.1.1类的基本结构2.1.2定义初始化2.1.3构造方法2.1.4方法重载一个Java类形式上包括两个部分:类首说明和类体类首说明形式为:修饰符 class 类名extends 父类名 implements 接口名列表类体则可以包含构造方法、数据成员、方法成员等。Pro2_2:class Pointprivate int x,y;Point(int x,int y)this .x=x;this.y = y;public int GetX()return x;public void SetX(int xvalue)x=xvalue;例如:Pro2_1:class Simple int i;定义初始化是指当类的任何对象被创建的时候,一定会执行定义初始化语句,使得对象的数据成员可以有指定的初始值。定义初始化的形式为: 数据类型 变量名=初始值;对象一旦被创建,这些数据成员即有了初始值 定义初始化为每个新创建的对象的属性值提供了一个初始值,或者叫作默认值。 Pro2_3:class Testint i;int j=10; public class TestInit public static void main(String args) Test d = new Test ();System.out.println(i的值为:+d.i);System.out.println(j的值为:+d.j);i的值为:的值为:0j的值为:的值为:10 补充:class pointstatic point p1=new point();int x=10;int y=20;void show()System.out.println(p1.y);public class Test public static void main(String args)point temp = point.p1;temp.show();数据成员可以通过定义初始化来保证对象被创建后,属于某对象的数据成员能够一定设为指定的值。那么如果我们同时也希望对象被创建的时候,有些行为(方法)是一定能够被执行,则需要用到构造方法。构造方法一般用于确保在创建对象时能实施一些初始化的行为,例如判断初始值是否合法等。class FatherFather() System.out.println(call me!);void speak()System.out.println(I am Father);public class Test public static void main(String args) Father f = new Father(); f.speak(); call me!I am Father构造方法能确保某些行为一定被执行class Testint i;int j=10;Test(int x1,int x2)i=x1;j=x2; public class TestIntpublic static void main(String args) Test d = new Test (1,2);System.out.println(i的值为:+d.i);System.out.println(j的值为:+d.j);i的值为:1j的值为:2Pro2_4:public class TestInit public static void main(String args) Test d = new Test ();d.init();System.out.println(点的x初始值为:+d.p.x);点未被正确初始化!点的x初始值为:-12.1.3综合实例综合实例class Pointint x=-1,y=10; class TestPoint p = new Point();void init ()if (p.x0)|(p.y)0)System.out.println(点未被正确初始化!);-110Pxyd创建的创建的Test的实例的实例创建的创建的Point实例实例改造后的Pro2_4:public class TestInit public static void main(String args) Test d = new Test ();System.out.println(点的x初始值为:+d.p.x);class TestPoint p = new Point();Test ()if (p.x0)|(p.y)b) return a; else return b; int min(int a ,int b) int result = a; if (ab) result = b; return result; public class Test public static void main(String args)Query q = new Query();int max = q.max(10,20);System.out.println(max);在Pro2_8和Pro2_9中,进行方法调用时需要以创建类的对象为前提,这是因为那些方法均被定义为实例方法,所以类的实例方法要能够被调用,需要首先有这个实例存在。可以通过如下形式进行方法调用:对象引用名.类的非静态方法名(参数值1,参数值2) 进行方法调用时候,如果要调用的方法定义有相关参数,则须连同参数值一一按序输入,同时须类型匹配。this是对当前实例的引用。class Pointprivate int x,y;public void SetXValue(int a) this.x = a;public void SetYValue(int y)this.y= y;public int GetXValue()return this.x ;public void OutputX()System.out.println(this.GetXValue();class Pointprivate int x=10;private int y=20;public void setX(int x) this.x = x; public int getX() return this.x; public void setY(int y) this.y = y; public int getY() return y; public class one public static void main(String args) Point p = new Point();one testone = new one();testone.SetPoint(p);System.out.println(p.getX();public void SetPoint(Point p1)p1.setX(p1.getX()*100);p1.setY(p1.getY()*100);输出为:10001020PthisP1静态方法不需要像实例方法那样必须通过对象去调用,可以直接通过类来调用,如:类名.类静态方法名 Java类库中很多类提供了静态方法public class Funcs public static int max(int i1,int i2)if (i1i2) return i1;elsereturn i2;public static int getMin(int i1,int i2)if (i1i2) return i2;elsereturn i1;public static void main(String args) System.out.println(max(30,20);public class Test public static void main(String args) System.out.println( Funcs.max(30,20);public class Funcs public static int max(int i1,int i2)if (i1i2) return i1;elsereturn i2;public static int getMin(int i1,int i2)if (i1i2) return i2;elsereturn i1;java.lang 包中类包中类 MathMath 类包含用于执行基本数学运算的方法,如初等指数、对数、平方根和三角函数。 static double sqrt(double a) 返回正确舍入的 double 值的正平方根。static double pow(double a, double b) 返回第一个参数的第二个参数次幂的值。staticint max(inta, intb) 返回两个 int 值中较大的一个。public class Funcs public static void main(String args) System.out.println( Math.max(30, 20);System.out.println(Math.sqrt(9);System.out.println(Math.pow(3,3);303.027.0Pro2_10:class Pointint x,y;public Point (int x, int y)this.x=x; this.y= y;class Lengthpublic static double GetLen(Point p1,Point p2)returnMath.sqrt(Math.pow(p2.x-p1.x ), 2)+Math.pow(p2.y-p1.y ), 2);public class Operation public static void main(String args)Point p1 = new Point(2,2);Point p2 = new Point(1,1);System.out.println(Length.GetLen(p1, p2);2.4.1静态变量和实例变量2.4.2局部变量、全局变量、静态变量、实例变量的区别2.4.3final变量1.静态变量静态变量又称为类变量,不论类的实例有多少个,类变量的值只有一份。而实例变量的在内存中的份数和类的实例创建的个数一致。2.访问静态变量的途径有两种:类的变量名.变量名类的名字.变量名.局部变量必须赋初值;类中全局变量不赋初值,系统将自动赋值为0;静态变量的生存周期是整个程序运行期类中实例全局变量的生存周期是对象的生存期类中方法内局部变量的生存周期是方法的执行期Pro2_13:class Var static int i;int j;public void localprint()int k=0;i+;j+;k+;System.out.print(i=+i+t);System.out.print(j=+j+t);System.out.println(k=+k+t);public void aprint()localprint();localprint(); public class one public static void main(String args)Var var1 = new Var();var1.aprint();Var var2 = new Var();var2.aprint();该程序的输出结果为:i=1j=1k=1i=2j=2k=1i=3j=1k=1i=4j=2k=1应用上述2.4.2规则,i是静态变量,在整个程序运行期内存中只有一份存储,“i+;”语句共执行了4次,每次都是在前述“经过记忆”的i值的基础上进行加1;k是局部变量,只在localprint方法的执行期内“存活”,也即是,localprint方法执行完毕,k的值将不再被“记忆”。j的值留给大家去分析。使用final修饰符修饰成员变量,使得该成员变量的值不能被修改,又叫最终成员变量。final变量只能被赋值一次。class BaseClasspublic final String hostName=324;BaseClass()hostName=234;此处将出现错误!class Pointstatic final int i=100;final static Point origin= new Point(0,0); int x,y;Point(int x,int y)this.x=x; this.y = y;public class Test public static void main(String args)/Point.i=Point.i+1;/Point.origin= new Point(20,20); Point p1= new Point(10,20);p1.x=p1.x*Point.i;System.out.println(p1.x);/错误!i是一个final字段,不能被重新赋值/错误!origin是一个final字段,不能被重新赋值输出结果为:1000class Pointstatic final int i=100;final static Point origin= new Point(0,0); int x,y;Point(int x,int y)this.x=x; this.y = y;public class Test public static void main(String args)Point p1= new Point(10,20);System.out.println(p1.x);p1.x=p1.x*Point.i;System.out.println(p1.x);Point.origin.x=Point.origin.x+2;System.out.println(Point.origin.x);输出结果为:1010002 origin不能再和其它对象建立关联了,但是Point.origin.x是一个int型数据,是可以被更改的2.5.1创建包2.5.2使用包2.5.3包在类的访问控制上的意义和用途2.5.4类成员的缺省修饰符创建包的形式:package 包名包名;如果在类定义时没有上述形式的语句,则类定义在默认包中。class Pointpackage FirstGrade;public class Oper1 public void printStr(String str) System.out.println(str);package FirstGrade;public class Point如果当前类和待使用的类不在同一个包内,则需要使用import语句进行导入,才能使用。否则该类将不会被编译器识别。通过import语句导入要使用的包:import FirstGrade.*;也可以使用import语句导入要使用的类import FirstGrade.Point; 修饰符为public的类可以被其它的类访问。无修饰符的类可以被同一包中的类访问。如果类的成员在定义时是采用缺省修饰符,则可以被同一包内的任何类访问,但不能被其他包的类访问。package FirstGrade;public class Pointint x,y;Point()package FirstGrade;public class Oper1public static void main(String args) Point p = new Point();System.out.print(p.x);如果此处如果此处Point的构造方法没有加上的构造方法没有加上publicpublic 同同一一包包:保存在保存在Point.java文件中。文件中。保存在保存在Oper1.java文件中文件中one.java文件import FirstGrade.Point;public class one (该类在默认包中)public static void main(String args) Point p = new Point();Point p = new Point();将会报错:类Point是invisible的。如果Point的构造方法没有加上public,即使Point类被修饰为public,在所在包以外均为不可见package user.dao;public class User String id;private String name=Kate;private String password=12345;String sex;long registerTime;long lastLogin;long visitTimes;public String getId() return id;public void setId(String id)this.id = id;public String getPassword() return password;public void setPassword(String password) this.password = password;public String getSex() return sex;public void setSex(String sex) this.sex = sex;public void setRegisterTime(long registerTime) this.registerTime = registerTime;public long getLastLogin() return lastLogin;public void setLastLogin(long lastLogin) this.lastLogin = lastLogin;public long getVisitTimes() return visitTimes;public void setVisitTimes(long visitTimes) this.visitTimes = visitTimes;public String getName() return name;public void setName(String name) this.name = name;

    注意事项

    本文(教学课件第2章 类和对象.ppt)为本站会员(春哥&#****71;)主动上传,淘文阁 - 分享文档赚钱的网站仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知淘文阁 - 分享文档赚钱的网站(点击联系客服),我们立即给予删除!

    温馨提示:如果因为网速或其他原因下载失败请重新下载,重复下载不扣分。




    关于淘文阁 - 版权申诉 - 用户使用规则 - 积分规则 - 联系我们

    本站为文档C TO C交易模式,本站只提供存储空间、用户上传的文档直接被用户下载,本站只是中间服务平台,本站所有文档下载所得的收益归上传人(含作者)所有。本站仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。若文档所含内容侵犯了您的版权或隐私,请立即通知淘文阁网,我们立即给予删除!客服QQ:136780468 微信:18945177775 电话:18904686070

    工信部备案号:黑ICP备15003705号 © 2020-2023 www.taowenge.com 淘文阁 

    收起
    展开