java里的一些特别值得注意的地方
return 语句的作用:1.返回值 2.结束某个方法的执行。
局部变量必需要初始化,全局变量系统会默认初始值;
整型数赋默认值为0.
浮点数赋默认值为0.0,boolean赋默认值为false。
char型赋默认值为‘\u0000’。
复杂类型赋默认值为null。
栈是执行时的单位。而堆是存储的单位
栈:自己主动分配连续的空间,后进先出,放置局部变量
堆:不连续。放置new出来的变量
堆里面还有方法区,类的代码信息。static变量,常量池(字符串常量等)
public class Animal {
String name="Animal";
int age=2;
public void eat(){
System.out.println("Animal eat");
}
}
public class Bird extends Animal{
String name="Bird";
int age=20;
public void eat(){
System.out.println("Bird eat...");
}
public void sleep(){
System.out.println("Bird sleep....");
}
}
向上转型
Animal a=new Bird();
a.eat();
// 此处将调用子类的eat()方法。
原因:b实际指向的是Bird子类,故调用时会调用子类本身的方法。
// a.sleep();
//须要注意的是向上转型时a会遗失除与父类对象共同拥有的其它方法。
如本例中的sleep()方法不再为a全部。
向下转型
Bird b=(Bird)a;
b.eat();
//向下转型,编译和执行皆不会出错,这里的向下转型是安全的。由于b1指向的是子类对象
Animal a1=new Animal();
Bird b1=(Bird)a1; //不安全的向下转型,编译无错但会执行会出错
b1.eat(); //这句话执行会出错
java里的一些特别值得注意的地方的更多相关文章
- SQL指令中一些特别值得注意的地方
SQL基本指令要频繁使用,要是理解错了,将来工作一定会出现很大的麻烦.今天再重新梳理一下基本的SQL语法 SQL指令 in: 这个指令,我曾经发生过把它和python中的in搞混的错误.python中 ...
- java里String类为何被设计为final
前些天面试遇到一个非常难的关于String的问题,"String为何被设计为不可变的"?类似的问题也有"String为何被设计为final?"个人认为还是前面一 ...
- java里的静态成员变量是放在了堆内存还是栈内存
转自http://bbs.csdn.NET/topics/370001490 堆区: 1.存储的全部是对象,每个对象都包含一个与之对应的class的信息.(class的目的是得到操作指令) 2.jvm ...
- 一道简单的 Java 笔试题,但值得很多人反思!
前言 面试别人,对我来说是一件新奇事,以前都是别人面试我.我清楚地知道,我在的地域与公司,难以吸引到中国的一流软件人才.所以,我特地调低了期望,很少问什么深入的技术问题,只问一些广泛的.基础的.我只要 ...
- 小谈Java里的线程
今天,我们来谈一谈Java里的线程. 一.进程与线程的基本概念 大家可能没听过线程这个概念,但是相信,用计算机的朋友都听过进程这个概念.打开电脑的任务管理器,我们就可以看到许多进程.它们主要分为三类, ...
- java里的static和final
本节介绍JAVA里static和final的作用和使用方法以及一些需要注意的问题. 一.static static表示"全局"或"静态",用来修饰成员变量和成员 ...
- java里的基本数据类型
java里一共有八大数据类型 boolean(未定) char(2字节) byte(1字节) short(2字节) int(4字节) long(8字节) float(4字节) double(8字节), ...
- (转载)Java里快如闪电的线程间通讯
转自(http://www.infoq.com/cn/articles/High-Performance-Java-Inter-Thread-Communications) 这个故事源自一个很简单的想 ...
- 关于java里小数点的保留
关于java里小数点的保留 1.先给大家看一个代码. import java.util.*;import java.text.*; public class A { public static voi ...
随机推荐
- BZOJ 4012 [HNOI2015]开店 (树分治+二分)
题目大意: 给你一棵树,边有边权,点有点权,有很多次询问,求点权$\in[l,r]$的所有节点到某点$x$的距离之和,强制在线 感觉这个题应该放在动态点分之前做= = 套路方法和动态点分是一样的 每次 ...
- ansible shell模块
[root@ftp:/root] > ansible ansible01 -u root -k -m shell -a 'hostname' SSH password: ansible01 | ...
- python3编写登录接口
#/usr/bin/env python#yehui'''作业一:博客 作业二:编写登陆接口 输入用户名密码 认证成功后显示欢迎信息 输错三次后锁定'''import getpass, os, pic ...
- jquery在文本框之后添加红*
var addHtml="<span class='text_red'>*</span>";function req(re){ if(re.parent(& ...
- javascript 获取指定范围随机数
<script type="text/javascript"> function GetRandomNum(Min,Max){ var Range = Max - Mi ...
- Android 多分辨率自适应总结
这周的工作对Android项目多分辨率自适应进行调整.故对这方面知识进行不断的尝试学习.Android项目刚開始做的时候一定养成编程习惯,全部资源调用放在value中.统一命名以及管理.总结了下面内容 ...
- 千万别相信鲁大师的硬件測温柔CPU測温功能!!
非常多人本来随手安装的一个软件. 相信也信任得过它 . 这下让我測试对它失望了.没想到鲁大师这个測温功能实在太搓了!! 白白浪费了我一晚上, 搞来了硅胶 ,弄了几遍 , 还是一样, 还以为买了水货 ...
- Recovering unassigned shards on elasticsearch 2.x——副本shard可以设置replica为0在设置回来
Recovering unassigned shards on elasticsearch 2.x 摘自:https://z0z0.me/recovering-unassigned-shards-on ...
- nyoj--233--Sort it (水题)
Sort it 时间限制:1000 ms | 内存限制:65535 KB 难度:2 描述 You want to processe a sequence of n distinct integer ...
- 获取xml字符串中的属性值
pagexml = @"<?xml version='1.0' encoding='utf-8'?> <DATAPACKET Version='2.0'> <M ...