java基础10

  

Java内存管理分为两个方面:内存分配和内存回收。这里的内存分配特指创建Java对象时JVM

为该对象在堆内存中所分配的内存空间。内存回收指的是当该Java对象失去引用,变成垃圾时,JVM

的垃圾回收机制自动清理该对象,并回收该对象所占用的内存。

由于JVM的垃圾回收机制由一条后台线程完成,本身也是非常消耗性能的,因此如果肆无忌惮

地创建对象,让系统分配内存,那这些分配的内存都将由垃圾回收机制进行回收。

这样做有两个坏处:

1.不断分配内存使得系统中可用内存减少,从而降低程序运行性能;

2.大量已分配内存的回收使得垃圾回收的负担加重,降低程序的运行性能.

Java程序的变量大体可分为成员变量和局部变量。其中局部变量可分为如下3类。

1.形参:在方法签名中定义的局部变量,由方法调用者负责为其赋值,随方法的结束而消亡.?

如public void method(变量类型 变量名){}(变量类型变量名)又叫形式参数

2.方法内的局部变量:在方法内定义的局部变童,必须在方法内对其进行显式初始化.这种类型的局部变量从初始化完成后开始生效,随方法的结束而消亡.?

3.代码块内的局部变量:在代码块内定义的局部变量,必须在代码块内对其进行显式初始化.这种类型的局部变量从初始化完成后开始生效,随代码块的结束而消亡.?

在类中的都是成员变量,成员变量又分为实例变量和类变量。(类变量有static修饰)

时间: 2024-11-08 12:54:40

java基础10的相关文章

Java基础10 接口的继承与抽象类(转载)

接口继承 接口继承(inheritance)与类继承很类似,就是以被继承的interface为基础,增添新增的接口方法原型.比如,我们以Cup作为原interface: interface Cup{    void addWater(int w);    void drinkWater(int w);} 我们在继承Cup的基础上,定义一个新的有刻度的杯子的接口,MetricCup 接口如下: interface MetricCup extends Cup{    int WaterContent

Java基础10:全面解读Java异常

Java基础10:全面解读Java异常 为什么要使用异常 首先我们可以明确一点就是异常的处理机制可以确保我们程序的健壮性,提高系统可用率.虽然我们不是特别喜欢看到它,但是我们不能不承认它的地位,作用. 在没有异常机制的时候我们是这样处理的:通过函数的返回值来判断是否发生了异常(这个返回值通常是已经约定好了的),调用该函数的程序负责检查并且分析返回值.虽然可以解决异常问题,但是这样做存在几个缺陷: 1. 容易混淆.如果约定返回值为-11111时表示出现异常,那么当程序最后的计算结果真的为-1111

java基础10:正则表达式与反射

关于Java基础的文章,我觉得写得还可以,以前发在了我其它的博客了,肯定是原创,现在再分享给大家出来. ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------

Java基础10 接口的继承与抽象类

链接地址:http://www.cnblogs.com/vamei/archive/2013/03/31/2982240.html 作者:Vamei 出处:http://www.cnblogs.com/vamei 欢迎转载,也请保留这段声明.谢谢! 在实施接口中,我们利用interface语法,将interface从类定义中独立出来,构成一个主体.interface为类提供了接口规范. 在继承中,我们为了提高程序的可复用性,引入的继承机制.当时的继承是基于类的.interface接口同样可以继承

Java基础10:object类

Object类 这部分主要参考http://ihenu.iteye.com/blog/2233249 Object类是Java中其他所有类的祖先,没有Object类Java面向对象无从谈起.作为其他所有类的基类,Object具有哪些属性和行为,是Java语言设计背后的思维体现. Object类位于java.lang包中,java.lang包包含着Java最基础和核心的类,在编译时会自动导入.Object类没有定义属性,一共有13个方法,13个方法之中并不是所有方法都是子类可访问的,一共有9个方法

java基础10(多线程2)

线程的常用方法 public final void join()    线程加入 作用:等待该线程中止,其他线程才能继续抢着执行 public static void yield():  线程礼让 作用:暂停当前正在执行的线程对象,并执行其他线程.让线程间的执行更和谐一些,但是实际上做不到. public final void stop():线程死亡:直接杀死 public void interrupt():线程死亡:直接杀死,在死前,还可以有遗言(会执行后面的代码,然后死去). static

java基础---10. 封装性

1. 封装 封装就是将一些细节信息隐藏起来对于外界不可见,在Java中的体现 方法就是一种封装 关键字private也是一种封装 1.1 private关键字的作用及使用 创建一个Person类 /* 问题描述:定义Person的年龄的时候,无法阻止不合理的数组被设置进来 解决方法:用private关键字将需要保护的成员变量进行修饰,在本类当中依然可以随意访问,但是超出了本类范围不能直接访问 但是可以间接访问 间接访问private成员变量,就是定义一对getxxx和setxxx方法 getXx

Java基础(10) - 内部类

存在意义1.内部类可以很好的实现隐藏一般的非内部类,是不允许有private与protected权限的,但内部类可以 2.内部类拥有外部类所有元素的访问权限 ,private修饰也能访问. 3.可实现多重继承 ,让多个内部类分别继承多个其他类,使外部类可以同时获取多个其他类的属性. 4.可以避免修改接口而实现同一个类中两种同名方法的调用.(外部类继承,让内部类实现接口)参考:https://www.jianshu.com/p/f0fdea957792 静态.非静态内部类的区别1.声明静态内部类中

Java基础问题10问

Java基础必须掌握的问题10问: 主要知识点: 定义类,字段,static修饰,局部,成员变量初始化, 继承,(非)检查异常,读写流,拷贝文件.. 1.如何定义一个类.字段.方法:如何创建类的对象: 答:类是java程序的组织单位,任何的java语句,都要写在类文件里面.(这么说不全对,package语句和import语句就可以写在外面,但编译之后一定是在类文件里面的) 类一般形式:class className{类体} 定义字段:Java中字段一般即指成员变量(数据库才说是字段) acces