![](https://img-blog.csdnimg.cn/20201014180756928.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
java基础
张刚强
这个作者很懒,什么都没留下…
展开
-
java八种基本类型大小及封装类
1.整型(4个) byte->Byte 1bit short->Short 2bit int->Integer 4bit long->Long 8bit2.浮点型(2个) float->Float 4bit double->Double 8bit(小数定义默认double)3.字符型(1个) char->C原创 2017-12-18 21:39:48 · 431 阅读 · 0 评论 -
12. Static class 与non static class的区别。
static classnon static class1、用static修饰的是内部类,此时这个内部类变为静态内部类;对测试有用;2、内部静态类不需要有指向外部类的引用;3、静态类只能访问外部类的静态成员,不能访问外部类的非静态成员;1、非静态内部类需要持有对外部类的引用;2、非静态内部类能够访问外部类的静态和非静态成员;3、一个非静态内部类不能脱离外部类实体被创建;4、一个非静态内部类可以访问...原创 2018-03-23 23:16:51 · 384 阅读 · 0 评论 -
浅谈String创建对象与String的intern()方法
1.String创建对象的方式String a ="123";如果常量池中有这个字面值的话,直接将a指向常量池中的这个值;否则,创建一个123,并将a指向他String a =new ("123");如果常量池中有这个对象的话,则在堆中也会创建一个对象;如果常量池中没有的话,在推中创建出这个对象的同时,在池中也会添加这样一个字面值。2.String的intern方法// jdk1.6// fal...原创 2018-03-21 21:08:23 · 472 阅读 · 0 评论 -
13. String、StringBuffer与StringBuilder的区别。
这三个类之间的区别主要是在两个方面,即运行速度和线程安全这两方面。首先说运行速度,或者说是执行速度,在这方面运行速度快慢为:StringBuilder > StringBuffer > String String最慢的原因: String为字符串常量,而StringBuilder和StringBuffer均为字符串变量,即String对象一旦创建之后该对象是不可更改的,但后两者的对...原创 2018-03-21 11:18:56 · 219 阅读 · 0 评论 -
深入理解String
一、String类想要了解一个类,最好的办法就是看这个类的实现源代码,来看一下String类的源码:public final class String implements java.io.Serializable, Comparable<String>, CharSequence{ /** The value is used for character storag...转载 2018-03-21 09:46:48 · 201 阅读 · 0 评论 -
9. Java面向对象的三个特征与含义。
面向对象三大特性 封装,继承,多态。1.封装属性的封装和方法的封装。把属性定义为私有的, get(),set()方法。 好处是信息隐藏和模块化,提高安全性。封装的主要作用在于对外隐藏内 部实现细节,增强程序的安全性。Java支持4种不同的访问权限。 默认的,也称为default,在同一包内可见,不使用任何修饰符。 私有的,以private修饰符指定,在同一类内可见。 共有的,以public修饰...原创 2018-03-20 23:02:55 · 828 阅读 · 0 评论 -
7.try catch finally,try里有return,finally还执行么?
1.不论try,catch有没有return,finally都会执行2.try和catch中有return的话,执行到return之前会执行finally,然后执行return,但注意返回的为finally代码执行前的值package com.zgq.test;public class Test { public static void main(String[] args) { //...原创 2018-03-19 23:06:17 · 212 阅读 · 0 评论 -
6. equals与==的区别。
1.首先要理解,equals是Object类的一个方法,而==是java中的一个运算符。2.对于==这个运算符来说,当比较的是值类型(int,char,boolean)等,用==判断其相等性,而比较的是两个对象的时候,就用来判断指的是否是同一个对象。3.对于equals来说,它是要交给开发者去重写的,自己可以定义一个比较的规则,但是当重写equals方法的时候,注意要同时重写has原创 2018-02-06 20:08:11 · 3334 阅读 · 0 评论 -
4. Object有哪些公用方法?(对Object类的11个方法进行源码层次的理解)
首先看一下jdk8版本的Object类的源码:(此段内容为转载)package java.lang;/** * **Class {@code Object} is the root of the class hierarchy. * Every class has {@code Object} as a superclass. All objects, * including arra原创 2018-01-27 23:06:23 · 385 阅读 · 0 评论 -
对于java中的native方法的一些理解
一. 什么是Native Method(转载)简单地讲,一个Native Method就是一个java调用非java代码的接口。一个Native Method是这样一个java的方法:该方法的实现由非java语言实现,比如C。这个特征并非java所特有,很多其它的编程语言都有这一机制,比如在C++中,你可以用extern “C”告知C++编译器去调用一个C的函数。“A native m转载 2018-01-27 21:18:46 · 282 阅读 · 0 评论 -
3. 你重写过hashcode和equals么,要注意什么?
SUN官方的文档中规定"如果重定义equals方法,就必须重定义hashCode方法,以便用户可以将对象插入到散列(哈希)表中" 那么 SUN 公司是出于什么考虑做了这个规定呢? 在集合框架中的HashSet,HashTable和HashMap都使用哈希表的形式存储数据,而hashCode计算出来的哈希码便是它们的身份证。哈希码的存在便可以: 快速定位对象,提高哈希表集原创 2018-01-25 19:58:28 · 2094 阅读 · 1 评论 -
Integer关于equals与==的比较(自动拆装箱技术和常量池技术)
首先介绍下 equals方法遵循的规则:自反性,一致性,传递性,对称性,与null相比,返回false; 1.JAVA当中所有的类都是继承于Object这个基类的,在Object中的基类中定义了一个equals的方法,在没有覆写equals方法的情况下,他们之间的比较还是基于他们在内存中的存放位置的地址值的,因为Object的equals方法也是用双等号(==)进行比较的,所以比较后原创 2017-12-18 22:30:59 · 293 阅读 · 0 评论 -
13. String、StringBuffer与StringBuilder的区别。
1.从线程安全方面来说String和StringBuffer是线程安全的,而StringBuilder是线程不安全的。2.从初始化方式来说String可以通过String a=“123”的方式直接赋值,而StringBuffer和StringBuilder必须通过new的方式来创建对象。3.从可变性与不可变性来说String是属于不可变对象,用final修饰,而StringBuffer和Strin...原创 2018-03-26 15:08:53 · 128 阅读 · 0 评论