面向对象-类-成员变量-局部变量-this
1、能够理解面向对象的思想
面向对象是基于面向过程的编程思想,强调的是对象,由对象去调用功能。它是一种更符合人类习惯的编程思想,可以将复杂的事情简单化,将我们的角色从执行者变成了指挥者。
2、能够明确类与对象关系
类是客观世界中相关事物的基本特征抽象。对象是该类事物的具体体现。比如手机是一个类,而iphone7就是一个对象。
3、定义学生类
public class Student{
//成员变量
String name;
int age;
//成员方法
public void tell(){
System.out.println("我叫:"+ name +",今年"+age+"岁。");
}
}
public static void main StudentDemo{
//实例化对象
Student stu = null;
stu = new Student;
stu.name = "laohu";
stu.age = 28;
stu.tell();
}
4、能够创建对象,并且使用对象访问类中的成员
public Student{
String name;
int age;
}
public StudentDemo{
public static void main(String[] args){
Student stu = new Student;
stu.name = "zhoa";
stu.age = 30;
}
}
5、能够说出成员变量和局部变量的区别
1)位置不同:成员变量在类中,方法外;局部变量在方法中。
2)内存位置不同:成员变量在堆区;局部变量在栈区;
3)初始化:局部变量需初始化;成员变量有默认值,无需初始化;
4)生命周期不同:局部变量随方法的调用而产生,随方法的调用完毕而消失;成员变量随对象的产生而产生,随对象的消失而消失。
6、能够用封装的思想定义一个标准类--POJO(如何理解封装?)
封装是面向对象的三大特征之一(继承和多态),它指的是将对象的状态信息隐藏在对象内部,不允许外部直接访问,而是通过该类提供的方法来实现对内部信息的操作和访问。
封装是面向对象语言对客观世界的模拟,良好的封装可以实现以下目的:
(1)隐藏类的实现细节;
(2)让使用者只能通过事先预定的方法访问数据,从而可以在该方法里加入控制逻辑,限制对成员变量的不合理访问;
(3)可进行数据检查,从而保证对象信息的完整性;
(4)便于修改,提高代码的可维护性;
为实现良好的封装,可从以下两方面考虑:
(1)隐藏成员变量和实现细节,不允许外部直接访问;
(2)暴露方法,让方法来控制对这些成员变量进行安全的访问与操作;
7、能够说出this可以解决的问题
1)表示类中的属性;
2)调用本类中的构造方法;
3)表示当前对象。
8、能够运用构造方法创建对象
class Student{
public Student(String name, int age){
if(age>0){
this.name = name;
return name;
}else{
return 0;
}
if(name ){
}
this.name = name;
this.age = age;
system.out.println("我叫:"+name+",今年"+age+"岁。")
}
}
public class StudentDemo{
public static void main(String[] args){
Student stu = new Student("laohu",30);
}
}
面向对象-类-成员变量-局部变量-this的更多相关文章
- Java中变量之局部变量、本类成员变量、父类成员变量的访问方法
变量:局部变量.本类成员变量.父类成员变量 如何访问:如果变量名相同,则采用就近原则,哪个变量离所要调用的访问最近,那就么就输出,优先顺序为:局部变量 > 本类成员变量 > 父类成员变量 ...
- 【iOS 开发】Objective - C 面向对象 - 方法 | 成员变量 | 隐藏封装 | KVC | KVO | 初始化 | 多态
一. Objective-C 方法详解 1. 方法属性 (1) OC 方法传参机制 Object-C 方法传参机制 : OC 中得参数传递都是值传递, 传入参数的是参数的副本; -- 基本类型 (值传 ...
- Objective-C类成员变量深度剖析
目录 Non Fragile ivars 为什么Non Fragile ivars很关键 如何寻址类成员变量 真正的“如何寻址类成员变量” Non Fragile ivars布局调整 为什么Objec ...
- 成员变量&&局部变量
一.相同点:1.都遵循变量的声明格式:(修饰符) 数据类型 变量名=初始化值 2.都有各自的作用域 二.不同点:1.声明的位置不同 成员变量:声明在类内,方法外. 局部变量:声明在方法内. ...
- AJPFX总结面向对象中成员变量和成员方法的定义
//面向对象中成员变量和成员方法的定义格式:========================================= 成员变量定义在类中方法外,可以被该类中所有方法使用. ...
- Objective-C类成员变量深度剖析--oc对象内存模型
目录 Non Fragile ivars 为什么Non Fragile ivars很关键 如何寻址类成员变量 真正的“如何寻址类成员变量” Non Fragile ivars布局调整 为什么Objec ...
- 编写Java程序,创建Dota游戏中的兵营类,兵营类有一个类成员变量count、一个实例变量name和另一个实例变量selfCount。
返回本章节 返回作业目录 需求说明: 创建Dota游戏中的兵营类 兵营类有一个类成员变量count.一个实例变量name和另一个实例变量selfCount. count表示的是兵营已经创建士兵的总数: ...
- static 类成员变量 和 static const类成员变量
1.使用static类的优点: (1)避免与其他类的成员或者全局变量冲突 (2)可以封装 (3)阅读性好 2.static 数据成员独立于该类的任意对象而存在 static数据成员的类型可以是该成员所 ...
- Qt一个project调用还有一个project的类成员变量
一句两句话已经不能表达如今的激动情绪了.唯有感叹知识的博大精深,并把感叹转变为文字. 同一个project调用其它类成员变量很easy. 如: 定义 Test1.h中申明成员变量 class A { ...
随机推荐
- 洛谷 1541 乌龟棋——dp
题目:https://www.luogu.org/problemnew/show/P1541 以用了几张牌为阶段.注意知道了用了4种牌各几张后,当前位置就是确定的,所以不用记录什么的. #includ ...
- bzoj2957楼房重建——线段树
题目:https://www.lydsy.com/JudgeOnline/problem.php?id=2957 线段树维护原点到楼顶的斜率,可以知道答案就是从原点开始斜率递增的个数: 记录一个mx数 ...
- 增加,删除GMS包
1. device/hiteq/vtab_1050_standard/httek.mk BUILD_GMS:=yes GMS_VARIANT:=mini 2. rm out/target/produc ...
- 修改winform安装包写日志文件权限
1.如果程序有写入文件的功能要添加该文件 并配置该属性 改成这个即可
- hibernate学习三 精解Hibernate之核心文件
一 hibernate.cfg.xml详解 1 JDBC连接: 2 配置C3P0连接池: 3 配置JNDI数据源: 4 可选的配置属性: 5 hibernate二级缓存属性 6 hibernate事务 ...
- 转 vs2008使用技巧推荐
Visual Studio 2008自带的1000多个 Windows 系统使用的各种图标.光标和动画文件在Visual Studio 2008的安装目录下,\Microsoft Visual Stu ...
- android调试之adb
ADB 其实大部分的PC开发机与Android设备的操作都是通过adb(android debug bridge)技术完成的,这是一个C/S架构的命令行工具,主要由三个部分组成 运行在PC开发机上的命 ...
- mptcp文献汇总
1 https://www.blackhat.com/docs/us-14/materials/us-14-Pearce-Multipath-TCP-Breaking-Todays-Networks- ...
- 支持lua的框架和ide
1.Kony http://mobilehub.io/products/kony 2.CryEngine http://mobilehub.io/products/cryengine 3.Dragon ...
- 一个例子读懂 JS 异步编程: Callback / Promise / Generator / Async
JS异步编程实践理解 回顾JS异步编程方法的发展,主要有以下几种方式: Callback Promise Generator Async 需求 显示购物车商品列表的页面,用户可以勾选想要删除商品(单选 ...