[零基础学JAVA]Java SE面向对象部分.面向对象基础(01)
在对象的内存分配上与c++有区别:
#include <iostream>
#include <string>
class Person{
private:
std::string name;
int age;
public:
void setAge(int age){
this->age = age;
}
void setName(std::string name){
this->name = name;
}
int getAge(){
return this->age;
}
std::string getName(){
return this->name;
}
};
int main(){
Person per;
per.setAge(10);
std::cout<<per.getAge()<<std::endl;
return 0;
}
java:
private int age;
private String name;
void setAge(int age){
this.age = age;
}
void setName(String name){
this.name = name;
}
int getAge(){
return this.age;
}
String getName(){
return this.name;
}
}
public class ObjectTest{
public static void main(String args[]){
Person per = null;
per = new Person();
per.setAge(10);
System.out.println(per.getAge());
}
}
1、定义好一个类
2、为定义好的类实例化对象
· 声明对象:在栈内存中开辟空间
· 实例化对象(为一个对象开辟空间),使用关键字new完成。只要有new关键字就表示在堆内存中开辟空间,在堆内存中保存各个对象的属性。而方法是保存在全局代码区里面滴。
3、通过对象.属性为类中的属性赋值,通过对象.方法()调用类中的方法。
NullPointerException : 空指向异常,只要是没有堆内存引用的对象,直接调用对象访问属性或方法的时候都会出现空指向异常。此异常会伴随你的开发人生。
总结:
1、类与对象的关系
java:
一个文件中只能有一个public类,此对类名要跟文件名一致。
默认类中属性public;无析构函数。
C++:Struct 默认public,Class默认private;
· 类是对象的模板,对象是类的一个实例
2、对象的创建
c++:可栈,可堆,带指针!
java:无指针,栈中分配内存无效,必须要在堆中分配
·声明对象:在栈内存中声明;类名称 对象名称 = null ;
·实例化对象:使用new在堆内存中开辟空间,保存属性;对象名称 = new 类名称() ;
3、对象的引用传递
4、垃圾的产生。
[零基础学JAVA]Java SE面向对象部分.面向对象基础(01)的更多相关文章
- 零基础学python习题 - Python必须知道的基础语法
1. 以下变量命名不正确的是(D) A. foo = the_value B. foo = l_value C. foo = _value D. foo = value_& 2. 计算2的38 ...
- 076 01 Android 零基础入门 02 Java面向对象 01 Java面向对象基础 01 初识面向对象 01 Java面向对象导学
076 01 Android 零基础入门 02 Java面向对象 01 Java面向对象基础 01 初识面向对象 01 Java面向对象导学 本文知识点:Java面向对象导学 说明:因为时间紧张,本人 ...
- 零基础学Java第五节(面向对象一)
本篇文章是<零基础学Java>专栏的第五篇文章,文章采用通俗易懂的文字.图示及代码实战,从零基础开始带大家走上高薪之路! 本文章首发于公众号[编程攻略] 类与对象 在哲学体系中,可以分为主 ...
- 零基础学Java第六节(面向对象二)
本篇文章是<零基础学Java>专栏的第六篇文章,文章采用通俗易懂的文字.图示及代码实战,从零基础开始带大家走上高薪之路! 本文章首发于公众号[编程攻略] 继承 创建一个Person类 我们 ...
- 088 01 Android 零基础入门 02 Java面向对象 02 Java封装 01 封装的实现 02 封装的代码实现
088 01 Android 零基础入门 02 Java面向对象 02 Java封装 01 封装的实现 02 封装的代码实现 本文知识点:Java封装的代码实现 说明:因为时间紧张,本人写博客过程中只 ...
- 099 01 Android 零基础入门 02 Java面向对象 03 综合案例(学生信息管理) 02 案例分析及实现 03 编写并测试Student类
099 01 Android 零基础入门 02 Java面向对象 03 综合案例(学生信息管理) 02 案例分析及实现 03 编写并测试Student类 本文知识点:编写并测试Subject类 说明: ...
- 101 01 Android 零基础入门 02 Java面向对象 03 综合案例(学生信息管理) 02 案例分析及实现 05 通过方法实现学生类与专业类关联——方案二
101 01 Android 零基础入门 02 Java面向对象 03 综合案例(学生信息管理) 02 案例分析及实现 05 通过方法实现学生类与专业类关联--方案二 本文知识点:通过方法实现学生类与 ...
- 零基础学Java,PayPal技术专家手把手带你入门
在最权威的 TIOBE 编程语言排名榜单上,Java 常年稳居第一,可以说是世界上应用最为广泛的一门语言. 同时,在微服务.云计算.大数据.Android App 开发等领域,Java 也是当之无愧的 ...
- 零基础学Java第三节(基本输入输出)
本篇文章是<零基础学Java>专栏的第三篇文章,文章采用通俗易懂的文字.图示及代码实战,从零基础开始带大家走上高薪之路! 本文章首发于公众号[编程攻略] Java程序的命令行参数 我们可以 ...
- # 095 01 Android 零基础入门 02 Java面向对象 02 Java封装 01 封装的实现 03 # 088 01 Android 零基础入门 02 Java面向对象 02 Java封装 03 封装总结 01 封装知识点总结
095 01 Android 零基础入门 02 Java面向对象 02 Java封装 01 封装的实现 03 # 088 01 Android 零基础入门 02 Java面向对象 02 Java封装 ...
随机推荐
- 并发编程之synchronize
synchronized是Java中的关键字,是一种常用的线程同步锁. 用法 注意:在理解synchronized时,要知道一个核心点,synchronized锁定的不是代码,而是对象.使用synch ...
- MySQL的优化(大纲)
参考:http://www.cnblogs.com/villion/archive/2009/07/23/1893765.html#3031899 MySQL的优化,主要可以考虑以下四方面: 1.数据 ...
- Android Studio修改程序包名
我也是在网上看到的,并且这个方法只能这么修改:cn.example.xxx修改为cn.example.yyy ,修改到根目录下... refactor---rename修改 然后clean,buil ...
- 判断img图片是否加载成功
上班之余,记录一下工作中遇到的有趣问题... 事情是这样的...在做一个内嵌H5的app时,有一个“个人名片”页面...要求:如果后台接口有给头像的图片链接就用他们给的,如果没给,前端给个默认头像.. ...
- [javaEE] JDBC快速入门
JDBC:Java Data Base Connectivity java数据库连接 1.组成JDBC的两个包:主要是接口 java.sql javax.sql 2.相应JDBC的数据库实现 在tom ...
- java_对象序列化、反序列化
1.概念 序列化:将对象转化为字节序列的过程 反序列化:将字节序列转化为对象的过程 用途: A:将对象转化为字节序列保存在硬盘上,如文件中,如文本中的例子就是将person对象序列化成字节序列,存在p ...
- 模块—— 序列化模块、random模块、os模块 、 sys模块、hashlib模块、collections模块
今天我们来说说Python中的模块: 第三方模块 可以下载/安装/使用 第一步:将pip.exe 所在的目录添加到环境变量中第二步:输入pip第三步:pip install 要安装的模块名称 #pi ...
- poj 1679 The Unique MST (判定最小生成树是否唯一)
题目链接:http://poj.org/problem?id=1679 The Unique MST Time Limit: 1000MS Memory Limit: 10000K Total S ...
- C# 修改GroupBox的边框颜色和字体颜色
改变GroupBox边框和的颜色 private void groupBox_BasicInformation_Paint(object sender, PaintEventArgs e) { e.G ...
- PeekMessage&GetMessage
原文:http://www.cnblogs.com/faceang/archive/2010/05/25/1743757.html PeekMessage与GetMessage的对比相同点:PeekM ...