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的更多相关文章

  1. Java中变量之局部变量、本类成员变量、父类成员变量的访问方法

    变量:局部变量.本类成员变量.父类成员变量 如何访问:如果变量名相同,则采用就近原则,哪个变量离所要调用的访问最近,那就么就输出,优先顺序为:局部变量 > 本类成员变量 > 父类成员变量 ...

  2. 【iOS 开发】Objective - C 面向对象 - 方法 | 成员变量 | 隐藏封装 | KVC | KVO | 初始化 | 多态

    一. Objective-C 方法详解 1. 方法属性 (1) OC 方法传参机制 Object-C 方法传参机制 : OC 中得参数传递都是值传递, 传入参数的是参数的副本; -- 基本类型 (值传 ...

  3. Objective-C类成员变量深度剖析

    目录 Non Fragile ivars 为什么Non Fragile ivars很关键 如何寻址类成员变量 真正的“如何寻址类成员变量” Non Fragile ivars布局调整 为什么Objec ...

  4. 成员变量&&局部变量

    一.相同点:1.都遵循变量的声明格式:(修饰符) 数据类型  变量名=初始化值 2.都有各自的作用域 二.不同点:1.声明的位置不同      成员变量:声明在类内,方法外. 局部变量:声明在方法内. ...

  5. AJPFX总结面向对象中成员变量和成员方法的定义

    //面向对象中成员变量和成员方法的定义格式:=========================================          成员变量定义在类中方法外,可以被该类中所有方法使用. ...

  6. Objective-C类成员变量深度剖析--oc对象内存模型

    目录 Non Fragile ivars 为什么Non Fragile ivars很关键 如何寻址类成员变量 真正的“如何寻址类成员变量” Non Fragile ivars布局调整 为什么Objec ...

  7. 编写Java程序,创建Dota游戏中的兵营类,兵营类有一个类成员变量count、一个实例变量name和另一个实例变量selfCount。

    返回本章节 返回作业目录 需求说明: 创建Dota游戏中的兵营类 兵营类有一个类成员变量count.一个实例变量name和另一个实例变量selfCount. count表示的是兵营已经创建士兵的总数: ...

  8. static 类成员变量 和 static const类成员变量

    1.使用static类的优点: (1)避免与其他类的成员或者全局变量冲突 (2)可以封装 (3)阅读性好 2.static 数据成员独立于该类的任意对象而存在 static数据成员的类型可以是该成员所 ...

  9. Qt一个project调用还有一个project的类成员变量

    一句两句话已经不能表达如今的激动情绪了.唯有感叹知识的博大精深,并把感叹转变为文字. 同一个project调用其它类成员变量很easy. 如: 定义 Test1.h中申明成员变量 class A { ...

随机推荐

  1. 洛谷 1541 乌龟棋——dp

    题目:https://www.luogu.org/problemnew/show/P1541 以用了几张牌为阶段.注意知道了用了4种牌各几张后,当前位置就是确定的,所以不用记录什么的. #includ ...

  2. bzoj2957楼房重建——线段树

    题目:https://www.lydsy.com/JudgeOnline/problem.php?id=2957 线段树维护原点到楼顶的斜率,可以知道答案就是从原点开始斜率递增的个数: 记录一个mx数 ...

  3. 增加,删除GMS包

    1. device/hiteq/vtab_1050_standard/httek.mk BUILD_GMS:=yes GMS_VARIANT:=mini 2. rm out/target/produc ...

  4. 修改winform安装包写日志文件权限

    1.如果程序有写入文件的功能要添加该文件 并配置该属性 改成这个即可

  5. hibernate学习三 精解Hibernate之核心文件

    一 hibernate.cfg.xml详解 1 JDBC连接: 2 配置C3P0连接池: 3 配置JNDI数据源: 4 可选的配置属性: 5 hibernate二级缓存属性 6 hibernate事务 ...

  6. 转 vs2008使用技巧推荐

    Visual Studio 2008自带的1000多个 Windows 系统使用的各种图标.光标和动画文件在Visual Studio 2008的安装目录下,\Microsoft Visual Stu ...

  7. android调试之adb

    ADB 其实大部分的PC开发机与Android设备的操作都是通过adb(android debug bridge)技术完成的,这是一个C/S架构的命令行工具,主要由三个部分组成 运行在PC开发机上的命 ...

  8. mptcp文献汇总

    1 https://www.blackhat.com/docs/us-14/materials/us-14-Pearce-Multipath-TCP-Breaking-Todays-Networks- ...

  9. 支持lua的框架和ide

    1.Kony http://mobilehub.io/products/kony 2.CryEngine http://mobilehub.io/products/cryengine 3.Dragon ...

  10. 一个例子读懂 JS 异步编程: Callback / Promise / Generator / Async

    JS异步编程实践理解 回顾JS异步编程方法的发展,主要有以下几种方式: Callback Promise Generator Async 需求 显示购物车商品列表的页面,用户可以勾选想要删除商品(单选 ...