Java知识点合集:管道

public class Test2
{
    public void add(Byte b)
    {
        b = b++;
    }
    public void test()
    {
        Byte a = 127;
        Byte b = 127;
        add(++a);
        System.out.print(a + " ");//-128
        add(b);
        System.out.print(b + "");//127
    }
}

包装类

包装类的值都是Final不变的,对于++b或b++,新建对象把引用传给原对象句柄,在函数中操作,只是形参的临时句柄改变了指向,实参的句柄还是指向原来的对象

管道

  • 普通管道(PIPE):通常有两种限制,一是单工,即只能单向传输;二是血缘,即常用于父子进程间(或有血缘关系的进程间)。

  • 流管道(s_pipe):去除了上述的第一种限制,实现了双向传输。

  • 命名管道(name_pipe):去除了上述的第二种限制,实现了无血缘关系的不同进程间通信。
    对于不同的服务器之间的通信,是要要求全双工形式的,而管道只能是半双工,虽然可以双向,但是同一时间只能有一个方向传输

字符串常量池和JVM运行时数据区

  • 字符串常量池:JVM为了减少字符串对象的重复创建,其维护了一个特殊的内存
  • 工作原理:当代码中出现字面量形式创建字符串对象时,JVM首先会对这个字面量进行检查,如果字符串常量池中存在相同内容的字符串对象的引用,则将这个引用返回,否则新的字符串对象被创建,然后将这个引用放入字符串常量池,并返回该引用。

###JDK classLoader
JDK中提供了三个ClassLoader,根据层级从高到低为:
Bootstrap ClassLoader,主要加载JVM自身工作需要的类。
Extension ClassLoader,主要加载%JAVA_HOME%\lib\ext目录下的库类。
Application ClassLoader,主要加载Classpath指定的库类,一般情况下这是程序中的默认类加载器,也是ClassLoader.getSystemClassLoader() 的返回值

JVM加载类的实现方式,我们称为 双亲委托模型,判断两个类是否相同:一是类的全称;另一个是类加载器

接口和抽象类的区别

接口(interface)可以说成是抽象类的一种特例,接口中的所有方法都必须是抽象的。接口中的方法定义默认为public abstract类型,接口中的成员变量类型默认为public static final
1.抽象类可以有构造方法,接口中不能有构造方法。
2.抽象类中可以包含非抽象的普通方法,接口中的所有方法必须都是抽象的,不能有非抽象的普通方法。
3.抽象类中可以有普通成员变量,接口中没有普通成员变量
4. 抽象类中的抽象方法的访问类型可以是public,protected和默认类型
5. 抽象类中可以包含静态方法,接口中不能包含静态方法
6. 抽象类和接口中都可以包含静态成员变量,抽象类中的静态成员变量的访问类型可以任意,但接口中定义的变量只能是public static final类型,并且默认即为public static final类型
7. 一个类可以实现多个接口,但只能继承一个抽象类。

java中native

JNI
java调用非java代码的接口

Java的反射机制

反射机制:在运行状态中,任意一个类知道这个类的所有属性和方法;任意一个对象都能调用它的任意方法和属性,动态获取信息及动态调用对象方法。
java.lang.reflect包中,常用的类有Contructor、Filed、Method;类等,AccessibleObject类是这三个类的基类。

  • 获得class的方式:
  1. 根据类名:类名.class
  2. 根据对象:对象.getClass();
  3. 根据全限定类对象:Class.forName(全限定类名)

Object 类

hashCode()、equals()、clone()、toString()、getClass()

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值