成员变量

Java成员变量和局部变量区别

巧了我就是萌 提交于 2019-12-05 11:25:38
成员变量和局部变量区别 变量根据定义位置的不同,我们给变量起了不同的名字。如下图所示: 区别 在类中的位置不同 (重点) 成员变量:类中,方法外 局部变量:方法中或者方法声明上(形式参数) 作用范围不一样(重点) 成员变量:类中 局部变量:方法中 初始化值的不同 (重点) 成员变量:有默认值 局部变量:没有默认值。必须先定义,赋值,最后使用 在内存中的位置不同 成员变量:堆内存 局部变量:栈内存 生命周期不同 成员变量:随着对象的创建而存在,随着对象的消失而消失 局部变量:随着方法的调用而存在,随着方法的调用完毕而消失 来源: https://www.cnblogs.com/wurengen/p/11922365.html

JavaSE学习总结

孤者浪人 提交于 2019-12-05 11:23:42
1. Java的三大特性 1.1 封装 所谓的封装即是将使用访问修饰符private将对象的属性私有化,同时提供一些可以被外界访问其属性的方法,控制在程序中属性的读写访问级别。封装的目的在于保证安全性和简化编程,调用者不需要了解具体的实现过程,只需要调用即可。 1.2 继承 所谓的继承是指可在已存在的类上进行扩展,从而获得一个新的类。新类除了拥有父类的属性和方法之外,还可以定义自己的属性和方法,实现对原有类的扩展。通过继承可以很好地复用之前的代码。 注意事项 子类拥有父类对象的所有属性和方法(包括私有属性和方法),但父类的私有属性和私有方法,其子类是无法访问的,只是拥有; 子类可拥有属于自己的属性和方法,实现对父类的扩展; 子类可以对父类的一些方法进行自己独有的实现(即重写Override)。 1.3 多态 所谓多态,简单来说就是同一个行为(方法)在不同情况下有着不同的表现。 重点 多态有两种形式:编译时多态和运行时多态,即overload和override 编译时多态,即overload:重载最常见的地方就是一个类的构造方法。一个类可以有一个或多个构造方法,这些构造方法的名字相同,但具体参数不同; 运行时多态,即override:重写最常见的就是重写toString()方法。toString()是Object中的一个方法,而Object类是所有类的父类。所以当定义一个新的类时

JAVA语言(28道练习题)

别说谁变了你拦得住时间么 提交于 2019-12-05 07:08:13
【练习题】01.类的成员变量 猜数字游戏一个类A有一个成员变量v有一个初值100。定义一个类对A类的成员变量v进行猜。如果大了则提示大了小了则提示小了。等于则提示猜测成功。import java.util. ; public class lianxi { public static void main(String[] dsa) { A a=new A(); Scanner input=new Scanner( System.in ); while (1==1) { System.out.println(“请猜测数字”); int i=input.nextInt(); if (i<a.v) { System.out.println(“小了”); continue; } else if (i>a.v) { System.out.println(“大了”); continue; } else { System.out.println(“恭喜你猜对了!”); break; } } } } class A { public int v=100; } 【练习题】02.类的成员变量 请定义一个交通工具(Vehicle)的类其中有: 属性速度(speed)体积(size)等等 方法移动(move())设置速度(setSpeed(int speed))加速speedUp(),减速speedDown

015 继承

旧巷老猫 提交于 2019-12-05 05:46:36
/* 派生类与基类 1 派生类的数据大小 (1) 基类 - 结构体 (2) 派生类 - 结构体套结构体 2 顺序问题: (1) 构造与析构: 基类先构造,后析构。派生类,先析构,后构造。 (2) 原因: 依赖关系, 派生类使用基类的数据,所以基类先构造。 3 三种权限: 访问限制 三种地方访问: 本类、派生类、类外 (1) private 本类可以访问 (2) protected: 基类和派生类可以访问 (3) public: 任意地方都可以访问 4 调用 (1) 基类的成员函数无法使用派生类的成员变量和成员函数 (2) 在继承允许的情况下, 派生类可以调用基类的成员变量和成员函数 (a) 允许派生类对基类同名的成员变量和成员函数进行重写 (b) 允许派生类成员函数通过基类名::成员函数/成员变量方式,使用基类的成员变量和成员函数。 (c) 允许派生类对象通过对象名.基类名::成员函数/成员变量方式,使用基类的成员变量和成员函数。 5 赋值 (1) 派生类对象(结构体)可以直接赋值给基类对象(结构体), 反之则不行。 (2) 原因: 派生类对象的数据(成员变量)>=基类对象的数据(成员变量), 反之则是<=。 (1) 派生类对象(指针)可以直接赋值给基类对象(指针), 反之则不行。 (2) 原因: 派生类的数据(成员变量)可以调用基类的成员函数,反之则无法实现。 */ 来源:

Vue 变量,成员,属性监听

微笑、不失礼 提交于 2019-12-05 02:59:58
Vue变量 <!DOCTYPE html> <html lang="zh"> <head> <meta charset="UTF-8"> <title>变量</title> </head> <body> <div id="app"> <p>{{ msg }}</p> <p>{{ info }}</p> <h3>{{ msg }}</h3> </div> <div id="main"> <p>{{ msg }}</p> <p>{{ info }}</p> </div> </body> <script src="js/vue.js"></script> <script> // 实例成员中的data是为vue页面模板通过数据变量的 let app = new Vue({ el: '#app', data: { msg: 'message', info: 'vue变量信息' } }); let main = new Vue({ el: '#main', data: { msg: 'msg', info: 'info' } }); console.log(app.info); console.log(main.info); // 创建vue实例(new Vue)传进去的字典(对象)的key,称之为vue实例成员(变量) // 访问实例成员,用 vue实例.$成员名, eg:app.$el

C++类的定义和对象

时光总嘲笑我的痴心妄想 提交于 2019-12-05 01:51:46
C++类的定义和对象 类的成员变量称为类的属性(Property),将类的成员函数称为类的方法(Method)。在面向对象的编程语言中,经常把函数(Function)称为方法(Method)。 类的定义 class Student{ public: //成员变量 char *name; int age; float score; void say(){ cout<<name<<age<<score<<endl; } }; 类只是一个模板(Template),编译后不占用内存空间. class C++ 中新增的关键字,用来定义类。 成员变量和成员函数,它们统称为类的成员(Member) 创建对象: Student Lilei; //创建对象 Student 是类名, liLei 是对象名。和使用基本类型定义变量的形式类似, 从这个角度考虑,我们可以把 Student 看做一种新的数据类型,把 liLei 看做一个变量。 在创建对象时,class 关键字可要可不要 class Student LiLei; //正确 Student LiLei; //同样正确 还可以创建对象数组: Student allStu[100]; 使用对象指针: Student stu; //pStu 是一个指针,它指向 Student 类型的数据,通过 Student 创建出来的对象 Student

Android WIFI 详解

荒凉一梦 提交于 2019-12-05 01:18:54
最 近研究Wifi模块,查了不少的相关资料,但发现基本上是基于android2.0版本的的分析,而现在研发的android移动平台基本上都是2.3的 版本,跟2.0版本的差别,在Wifi模块上也是显而易见的。2.3版本Wifi模块没有了WifiLayer,之前的WifiLayer主要负责一些复 杂的Wifi功能,如AP选择等以提供给用户自定义,而新的版本里面的这块内容基本上被WifiSettings所代替。 本文就是基于android2.3版本的Wifi分析,主要分为两部分来分别说明: (1) Wifi模块相关文件的解析 (2) Wpa_supplicant解析 (3) Wifi的启动流程(有代码供参考分析) 一,Wifi模块相关文件解析 1) wifisettings.java packages/apps/Settings/src/com/android/settings/wifiwifisettings.java 该类数据部分主要定义了下面几个类的变量: { private final IntentFilter mFilter; //广播接收器,用来接收消息并做响应的处理工作 privatefinal BroadcastReceiver mReceiver; //这是一个扫描类,会在用户手动扫描 AP时被调用 privatefinal Scanner mScanner;

c/c++——基本概念

跟風遠走 提交于 2019-12-05 01:01:16
内存 栈区和堆区的管理模式有所不同:栈区内存由系统分配和释放,不受程序员控制;堆区内存完全由程序员掌控,想分配多少就分配多少,想什么时候释放就什么时候释放,非常灵活。 栈(Stack)可以存放函数参数、局部变量、局部数组等作用范围在函数内部的数据,它的用途就是完成函数的调用。 栈区和堆区的内存在程序运行期间可以根据实际需求来分配和释放,不用在程序刚启动时就备足所有内存。这称为动态内存分配。 在栈上创建出来的对象都有一个名字,比如 stu,使用指针指向它不是必须的。但是通过 new 创建出来的对象就不一样了,它在堆上分配内存,没有名字,只能得到一个指向它的指针,所以必须使用一个指针变量来接收这个指针,否则以后再也无法找到这个对象了,更没有办法使用它。也就是说,使用 new 在堆上创建出来的对象是匿名的,没法直接使用,必须要用一个指针指向它,再借助指针来访问它的成员变量或成员函数。 栈内存是程序自动管理的,不能使用 delete 删除在栈上创建的对象;堆内存由程序员管理,对象使用完毕后可以通过 delete 删除。在实际开发中,new 和 delete 往往成对出现,以保证及时删除不再使用的对象,防止无用内存堆积。 有了对象指针后,可以通过箭头 -> 来访问对象的成员变量和成员函数,这和通过 结构体指针 来访问它的成员类似。 成员变量在堆区或栈区分配内存,成员函数在代码区分配内存

Java面试参考指南

谁说胖子不能爱 提交于 2019-12-05 00:15:26
Java面向对象相关概念 Java是一种基于面向对象概念的编程语言,使用高度抽象化来解决现实世界的问题。 面向对象的方法将现实世界中的对象进行概念化,以便于在应用之间进行重用。例如:椅子、风扇、狗和电脑等。 Java里的类(Class)是一个蓝图、模板,或者称之为原型,它定义了同一类事物的相同属性和行为。实例(Instance)是某个类的一个具体实现,同一个类所有的实例拥有相同的属性。举例来说,你可以定义一个类叫做“房子(House)”,这个类拥有一个属性叫做“房间数(number of room)”,这样你就可以创建一个“房间数”为2的“房子”实例,你还可以创建一个“房间数”为3的“房子”实例,等等等等。 优点: 面向对象软件开发的若干优点在于: 模块化,维护成本低; 更好的代码重用,具备继承性,开发更为敏捷; 更好的代码可靠性和灵活性; 对现实世界进行建模,易于理解; 对象水平的抽象; 从一个开发阶段向另一个开发阶段过渡更为简便。 面向对象软件系统(OOPS)的四大主要特征为: 封装(Encapsulation) 继承(Inheritance) 多态(Polymorphism) 抽象(Abstraction) 封装(Encapsulation) 封装机制在对象之间提供了一种隐藏域可见性的协议。Java中使用可见性修饰符private将方法和变量限制在类内部

C学习笔记(5)--- 指针第二部分,字符串,结构体。

纵饮孤独 提交于 2019-12-05 00:11:35
1. 函数指针(function pointer): 函数指针是指向函数的指针变量。 通常我们说的指针变量是指向一个整型、字符型或数组等变量,而函数指针是指向函数。 函数指针可以像一般函数一样,用于调用函数、传递参数。 函数指针变量的声明: typedef int (*fun_ptr)(int,int); 例子: https://www.runoob.com/cprogramming/c-fun-pointer-callback.html sub:指针函数是返回指针的函数,详见我上一篇文章。 2.回调函数(Callback function): 函数指针变量可以作为某个函数的参数来使用的,回调函数就是一个通过函数指针调用的函数。 " 以下是来自知乎作者常溪玲的解说: 你到一个商店买东西,刚好你要的东西没有货,于是你在店员那里留下了你的电话,过了几天店里有货了,店员就打了你的电话,然后你接到电话后就到店里去取了货。在这个例子里,你的电话号码就叫回调函数,你把电话留给店员就叫登记回调函数,店里后来有货了叫做触发了回调关联的事件,店员给你打电话叫做调用回调函数,你到店里去取货叫做响应回调事件。 " 意思简单来说就是:你现在定义的A函数的参数包含了一个你现在还不知道的B函数,所以你在参数中做了一个B函数指针以便引用这个B函数。 一旦引用的这个B函数被定义了