新人菜鸟JAVA学习历程一:基本概念的理解(一)
来源:互联网 发布:国际大数据大会 华云 编辑:程序博客网 时间:2024/06/04 06:36
1、当一个对象创建后,Java虚拟机(JVM)就会给这个对象分配一个引用自身的指针,这个指针的名字就是this。因此,this只能在类中的非静态方法中使用,静态方法和静态的代码块中绝对不能出现this。[参考博客]
2、this为什么不能在静态方法中出现:解答1:this是指当前对象,静态方法是通过类调用的方法,不需要实例化,既然不需要实例化,就没有当前对象,既然没有当前对象那怎么会有this呢?
解答2:静态方法不属于任何对象,是共有的,所有不能有代表某个对象的this [参考CSDN论坛]
3、关于静态方法:用static描述的方法称为静态方法。在使用静态方法的时候需要注意的两点:a.静态方法不能直接访问非静态变量:举例:public class Demo{
int x=0;
public static void main(String[] args){//在静态方法中引用非静态变量,非法
System.out.print(i);}}
b.非静态方法可以直接访问静态变量;
4、关于静态变量:静态变量则是整个类只有一个变量,它跟对象是没有关系的,跟它相关联的是类而不是对象。
5、关于构造函数:构造函数的作用是生成对象,并对对象的实例变量进行初始化。
6、关于实例化和引用变量:实例化会在堆中分配内存 ,会有一个内存地址;而 引用变量 会指向实例化在堆中分配内存的地址 。
2、this为什么不能在静态方法中出现:解答1:this是指当前对象,静态方法是通过类调用的方法,不需要实例化,既然不需要实例化,就没有当前对象,既然没有当前对象那怎么会有this呢?
解答2:静态方法不属于任何对象,是共有的,所有不能有代表某个对象的this [参考CSDN论坛]
3、关于静态方法:用static描述的方法称为静态方法。在使用静态方法的时候需要注意的两点:a.静态方法不能直接访问非静态变量:举例:public class Demo{
int x=0;
public static void main(String[] args){//在静态方法中引用非静态变量,非法
System.out.print(i);}}
b.非静态方法可以直接访问静态变量;
4、关于静态变量:静态变量则是整个类只有一个变量,它跟对象是没有关系的,跟它相关联的是类而不是对象。
5、关于构造函数:构造函数的作用是生成对象,并对对象的实例变量进行初始化。
6、关于实例化和引用变量:实例化会在堆中分配内存 ,会有一个内存地址;而 引用变量 会指向实例化在堆中分配内存的地址 。
0 0
- 新人菜鸟JAVA学习历程一:基本概念的理解(一)
- 记录java学习的历程(一)
- java菜鸟的学习历程
- slam菜鸟历程一
- (一)Java解析XML:XML基本概念的理解
- spark学习一 基本概念理解
- OBIEE菜鸟历程(一):RPD文件的发布
- 我的Java学习历程(一html5篇)
- java语言学习历程小结(一)
- OBIEE菜鸟历程(一):导航
- Java Thread学习历程一
- 技术学习的历程(一)入门
- 超级菜鸟的java学习笔记(一)
- 菜鸟学习java文件操作(一)
- 菜鸟学习think in java (一)
- Java-菜鸟学习之路(一)
- java基本概念(一)
- 新人JAVA的努力历程
- jquery 的 promise编程
- iOS 字面量语法
- RecyclerView 以及 ItemClickListener的实现
- javascript DOM技术常用操作
- Linux下用netstat命令查看网络负载状况
- 新人菜鸟JAVA学习历程一:基本概念的理解(一)
- 技术人生:故事之十一非要共享文件和磁盘空间?
- UITableView中Cell重用机制导致内容重复解决方法
- 基类protected能被子类直接调用
- Androdi端DES字符串对称加密
- socket非阻塞connect
- 使用反射获取当前new的对象的 带泛型的父类的 类型
- 二维数组
- POJ1845 Sumdiv A^B的约数和(逆元解法或二分乘法)