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. hdu 3507 Print Article —— 斜率优化DP

    题目:http://acm.hdu.edu.cn/showproblem.php?pid=3507 设 f[i],则 f[i] = f[j] + (s[i]-s[j])*(s[i]-s[j]) + m ...

  2. Mysql错误: ERROR 1205: Lock wait timeout exceeded; try restarting transaction

    MySQL:innodb的事务锁,一个线程占用着,简单做法是:执行mysql命令: show full processlist; 然后找出查询语句的系统id:kill掉被锁住的线程id:kill 12 ...

  3. dubbo项目中包的依赖说明

    依赖 (+) (#) 必需依赖 JDK1.5+ 理论上Dubbo可以只依赖JDK,不依赖于任何三方库运行,只需配置使用JDK相关实现策略. 缺省依赖 通过mvn dependency:tree > ...

  4. Coding WebIDE 开放支持第三方 Git 仓库

    为了给开发者提供更多便捷的开发方式,Coding.net 现正式宣布 WebIDE 开放啦 ! 用户可以自由选择各大代码托管平台,推送代码到其它家代码仓库啦,同时新版的 WebIDE 还有如下特性: ...

  5. visual editor ve1.5下载

    eclipse官网的ve下载不了,下面这个能下 http://sourceforge.net/projects/visualeditor/files/latest/download

  6. Git 移除某些文件

    一.前言 在使用 Git 版本控制中,有些文件是不需要加入到版本控制中的.如 日志( log ).编译的文件.这些随时都在变的文件,使用用一个代码库的用户.只要稍稍修改一点,或者启动一下,就会变.容易 ...

  7. E20180715-hm

    grapefruit n. 葡萄柚,西柚; 葡萄柚树;

  8. timewrap 算法

    何为延迟补偿?如何进行坐标差值?B客户端屏幕上A已经跑到东边了,但是收到服务器说"A正在西边往北跑",B到底该何去何从?我若干年前的一个实现版本,将简明扼要的解决这个问题: 影子跟 ...

  9. IT兄弟连 JavaWeb教程 Servlet会话跟踪 Session常用方法

    ●  public Object getAttribute(String name) 该方法返回在该session会话中具有指定名称的对象,如果没有指定名称的对象,则返回null. ●  public ...

  10. kali 装好java后提示 -bash: /home/javainstall/jdk1.8.0_171/bin/java: 没有那个文件或目录

    [问题现象] 在/etc/profile配置里面也是配置好了的,并且该目录是有java的 [问题原因] 出现这个问题的原因:64位的系统,安装了32位的Java. [解决方案] 通过网络搜索,发现通过 ...