- 1、本文档共4页,可阅读全部内容。
- 2、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 5、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 6、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 7、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 8、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
Java编程面向对象——类与对象的关系
面向对象是一种组件化的设计思想,OOA、OOD、OOP
类与对象是整个面向对象之中最为基础的组成单元,如果需要给划出定义:类就是共性的集合,而对象是某一个性的产物;所有类实际上是用来描述一个对象的结构。
类是通过对象来使用的,而对象是通过类来创建的。
类与对象的基本定义:
在程序中,定义类,可以使用“class 类名称{}”的语法结构完成。
而类之中的组成主要有两点:
* Field (属性、成员、变量),就是一推变量的集合
* Method (方法、行为),此时的方法是由对象调用的。
class Book{ //定义一个新类
String title; //名字
double price; //价格
public void getInfo(){ //此方法将由对象调用
System.out.println(名称+title+“价格”+price);
}
}
这个类中定义了两个属性和一个方法(可以定义更多属性和方法)
*类虽然存在,但是类的使用,必须有对象;
对象的定义格式:
声明并实例化对象:
类名称 对象名称 = new 类名称();
分步完成:
声 明 对 象: 类名称 对象名称 = null;
实例化对象 : 对象名称 = new 类名称();
引用数据类型:
引用数据类型最大的不同在于需要内存的开辟及使用,所以关键字 new 的主要功能就是开辟内存空间;
即:只要引用数据类型想使用,就必须使用 关键字 new 来开辟空间。
当一个对象实例化之后就可以使用以下方式利用对象来操作类的结构:
对象.属性:表示要操作类中属性内容
对象.方法():表示要调用类中的方法内容
class Book{ //新类
String title; //名字
double price; //价格
public void getInfo(){ //此方法将由对象调用
System.out.println(名称: + title + \t + 价格: + price);
}
}
public class demo1{
public static void main(String args[]){
Book bk = new Book() ; //声明并实例化对象
bk.title = Java开发 ; //title属性的操作
bk.price = 89.9 ; //操作属性内容
bk.getInfo(); //调用类中的 “getInfo()”方法
}
}
内存概念:
堆内存:保存每一个对象的属性内容,堆内存需要用关键字 new 才可以开辟;
栈内存:保存的是一块堆内存的地址。简单的理解,栈内存保存的是对象的名字;
编程中的栈内存和堆内存的操作过程:
栈内存
栈内存
0x[bookA]
堆内存
title=””,price=””
Book bk = new Book() ;
bk.title = Java开发 ;
栈内存
0x[bookA]
堆内存
Title=”java~”price=””
bk.price = 89.9 ;
栈内存
0x[bookA]
堆内存
Title=”java~”price=”89.9”
引用数据的初步分析:
引用是整个Java开发中的核心精髓所在,即:只有掌握了“引用”这一概念之后,才能加入下一步学习,类似C/C++中的指针概念。
在所有的引用分析里面,最关键的还是在于关键字 “new”,每一次使用关键字new,都会开辟新的堆内存空间,如果你的代码里面声明两个对象,并且使用了关键字new为两个对象分别实例化操作,那么一定是各自占有各自(独立)的堆内存空间
class Book{ //新类
String title; //名字
double price; //价格
public void getInfo(){ //此方法将由对象调用
System.out.println(名称: + title + \t + 价格: + price);
}
}
public class demo1{
public static void main(String args[]){
Book bookA = new Book() ; //声明并实例化对象
Book bookB = null ; //声明对象
bookA.title = Java开发 ;
bookA.price = 89.9 ;
bookB = bookA ; // 引用传递
bookB.price = 69.8 ;
bookA.getInfo
您可能关注的文档
最近下载
- 中职班主任育人故事.docx VIP
- 四年级劳动教育素养模拟监测题.docx
- 教科版科学六年级下册第三单元《宇宙》大单元整体教学设计.pdf VIP
- 新工科背景下专业教育与创新创业教育、工程伦理教育融合的教学改革探索.docx VIP
- 2025邯郸武安市选聘农村党务(村务)工作者180名笔试备考试题及答案解析.docx VIP
- 排水设施保护方案 2.doc VIP
- 企业架构数字化转型规划.pptx VIP
- 中国通信运营商AI+DevOps实践报告(2024).docx VIP
- 中职班主任_班级管理案例分析.doc VIP
- 2020年度《亚洲房地产投资信托基金(REITs)研究报告》-戴德梁行-202106.pdf
文档评论(0)