Welcome 微信登录

首页 / 操作系统 / Linux

对Java内存的一点理解

对Java内存的一点理解

在java中变量分为全局变量和局部变量,而全局变量又分为成员变量和类变量(静态变量)。成员变量放在堆里面,类变量放在内存的静态区。而对于java中的局部变量却是放在栈(堆栈)中的。而我们编写的java代码是存放在内存中的代码段的。数据段又是什么呢?数据段里面存放的是常量和静态的数据,静态区也是包含在数据段里面的!常常想到底堆里面是存放什么,在java中,堆里面存放的是对象,这时候就要想了,为什么成员变量也存放在堆里面?这里的“成员”二字很明显,成员变量它是...
让人费解的JavaScript的十大问题

让人费解的JavaScript的十大问题

JavaScript 可算是世界上最流行的编程语言,它曾被 Web 开发设计师贴上噩梦的标签,虽然真正的噩梦其实是 DOM API,这个被大量的开发与设计师随手拈来增强他们的 Web 前端的脚本语言,如今越来越被重视,虽则如此,JavaScript 仍然拥有很多让人费解的东西。 1. 它以 Java 命名,但并不是 Java 它最初叫 Mocha, 接着改名为 LiveScript,最后才确定命名为 JavaScript,根据历史记录,Java 的命名...
详细易懂的Linux makefile 教程

详细易懂的Linux makefile 教程

概述——什么是makefile?或许很多Winodws的程序员都不知道这个东西,因为那些Windows的IDE都为你做了这个工作,但我觉得要作一个好的和professional的程序员,makefile还是要懂。这就好像现在有这么多的HTML的编辑器,但如果你想成为一个专业人士,你还是要了解HTML的标识的含义。特别在Unix下的软件编译,你就不能不自己写makefile了,会不会写makefile,从一个侧面说明了一个人是否具备完成大型工程的能力。因为,...
Java串行端口技术协议

Java串行端口技术协议

串行通讯慨述 串行通讯协议有很多种,像RS232,RS485,RS422,甚至现今流行的USB等都是串行通讯协议。而串行通讯技术的应用无处不在。可能大家见的最多就是电脑的串口与Modem的通讯。记得在PC机刚开始在中国流行起来时(大约是在90年代前五年),那时甚至有人用一条串行线进行两台电脑之间的数据共享。除了这些,手机,PDA,USB鼠标、键盘等等都是以串行通讯的方式与电脑连接。而笔者工作性质的关系,所接触到的就更多了,像多串口卡,各种种类的具有串口通...
Java语言的接口与类型安全

Java语言的接口与类型安全

接口是实现构件可插入性的关键,可插入构件的关键在于存在一个公用的接口,以及每个构件实现了这个接口。 什么是接口? Java中的接口是一系列方法的声明,是一些方法特征的集合,一个接口只有方法的特征没有方法的实现,因此这些方法可以在不同的地方被不同的类实现,而这些实现可以具有不同的行为(功能)。 接口的两种含义:一,Java接口,Java语言中存在的结构,有特定的语法和结构;二,一个类所具有的方法的特征集合,是一种逻辑上的抽象。前者叫做“Java接口”,...
Java包导入机制的研究

Java包导入机制的研究

Java中有两种包的导入机制,总结如下: 单类型导入(single-type-import),例如import Java.io.File; 按需类型导入(type-import-on-demand),例如 import Java.io.*; 关于这两种导入类型大家各有所爱,众说纷纭。这里分析一下这两种导入类型的大致工作原理供大家参考。 单类型导入比较好理解,仅仅导入一个public类或者接口。而对于按需类型导入,有人误解为导入一个包下的所有类,其实...
Java类装载体系中的隔离性

Java类装载体系中的隔离性

Java中类的查找与装载出现的问题总是会时不时出现在Java程序员面前,这并不是什么丢脸的事情,相信没有一个Java程序员没遇到过ClassNotException,因此不要为被人瞅见自己也犯这样的错误而觉得不自然,但是在如果出现了ClassNotFoundException后异常后一脸的茫然,那我想你该了解一下java的类装载的体制了,同时为了进行下面的关于类装载器之间的隔离性的讨论,我们先简单介绍一下类装载的体系结构。 1. Java类装载体系结构 ...
认识Java的Class类

认识Java的Class类

Class 类是在Java语言中定义一个特定类的实现。一个类的定义包含成员变量,成员方法,还有这个类实现的接口,以及这个类的父类。Class类的对象用于表示当前运行的 Java 应用程序中的类和接口。 比如:每个数组均属于一个 Class 类对象,所有具有相同元素类型和维数的数组共享一个Class 对象。基本的 Java 类型(boolean, byte, char, short, int, long, float 和 double) 和 void 类型也...
Java类中热替换的概念、设计与实现

Java类中热替换的概念、设计与实现

类的热替换是Java在线升级系统设计中的基础技术,从文中给出的实例来看,构建在线升级系统不仅仅是一个技术问题,还牵扯到很多管理方面的因素,比如:如何管理、部署系统中的可在线升级部分和不可在线升级部分以降低系统的管理、维护成本等。 对于许多关键性业务或者庞大的Java系统来说,如果必须暂停系统服务才能进行系统升级,既会大大影响到系统的可用性,同时也增加了系统的管理和维护成本。因此,如果能够方便地在不停止系统业务的情况下进行系统升级,则可以很好地解决上述问题...
Linux内核学习经验分享

Linux内核学习经验分享

Linux内核是Linux爱好者的圣地,怎么能不学呢?最近抽出空来仔细研究学习内核看了几本书,现在还是一个内核菜鸟。我把我的菜鸟经验和大家分享一下,高手就不要看了。学习内核的基础知识学习内核需要一些基础知识,幸好这些知识不是太尖端,需要有:汇编、编译链接、C、计算机系统原理。需要的知识不是太多吧。初学习内核的经验*阅读内核的工具cscopecscope可以和vim或者emacs配合使用。cscope+emacs参考c-aries的《漫步在内核代码中的ema...
IBM发布POWER7难阻UNIX市场颓势

IBM发布POWER7难阻UNIX市场颓势

2月25日,IBM在北京盛大发布三年磨一剑的POWER7处理器,与上一代POWER6相比,POWER7处理器采用45纳米工艺制造,由双核直接升至8核,加之每个核心可实现4线程,这样最多可以支持32线程,性能上相较POWER6提升达4倍。 在发布会上,IBM罕见的将POWER7与英特尔至强处理器做比较,这在以往是不可能的事情,这不仅体现了IBM对POWER7信心满满,也意味着,POWER7所处的UNIX服务器阵营已经感受到以英特尔至强为代表的X86服务器带...
Java-J2SE环境搭建

Java-J2SE环境搭建

很多人不能够很好的进行JAVA编程,原因就在于对JAVA运行环境的不了解或是了解得不够透彻。如果连一个普通的JAVA程序运行环境都搭建不好。就更不要说理解J2EE的运行环境搭建了。故本文首先介绍如何搭建普通JAVA程序的运行环境,再介绍如何在这个基础上进一步搭建J2EE运行环境。 一、什么是JDK? 学JAVA的人都应该知道SUN公司的JAVA 技术平台按其应用环境的不同有三个非常著名的版本,他们是J2SE(用于普通桌面应用程序的开发),J2EE(用于企业...
Java中Static方法和Static程序块的用法总结

Java中Static方法和Static程序块的用法总结

Static 静态:这里主要记录的是静态程序块和静态方法如果有些代码必须在项目启动的时候就执行,就需要使用静态代码块,这种代码是主动执行的;需要在项目启动的时候就初始化但是不执行,在不创建对象的情况下,可以供其他程序调用,而在调用的时候才执行,这需要使用静态方法,这种代码是被动执行的. 静态方法在类加载的时候 就已经加载 可以用类名直接调用。静态代码块和静态方法的区别是:静态代码块是自动执行的;静态方法是被调用的时候才执行的.静态方法:如果我们在程序编写的...
Java游戏开发现状分析和走向

Java游戏开发现状分析和走向

这篇文章是基本上是基于我的论文开题报告,所以难免要打点官腔。因为我对手机游戏并不了解,所以本文关于java手机游戏的讨论会很少,而即使对于手机游戏以外的内容,我个人所能接触到的资源也是很有限的,讨论起来不免会有所偏颇,大家批判着看吧。 这些年由于Java技术的不断发展,Java程序的运行速度有了显着提升,同时硬件技术也在不断进步,从而使得java处理比较复杂的3d图形成为可能。 Lwjgl,Jogl,Java3D等技术的出现,使Java语言可以方便的利用...
C到C++的移植

C到C++的移植

1. 面对一推C代码并不要急着将函数一个个拷贝到类中去,那样在编译的时候只会产生一大堆错误信息,最要命的是剪不断,理还乱。正确的方法是找出核心函数或者入口函数,比如main。先将找出来的这个核心函数(当然main的话一般不加到类中)加入到类中去。然后从核心函数入手一行行地往下分析,遇到新的非局部变量和新函数就往类里加,然后进入到新函数中进行类似分析。直到从核心函数退出。如果函数之间的关系不是很松散的话,此时大部分函数应该已经在类中,可以编译一次,查遗补缺。...
C++中内存泄漏的检测

C++中内存泄漏的检测

首先我们需要知道程序有没有内存泄露,然后定位到底是哪行代码出现内存泄露了,这样才能将其修复。 最简单的方法当然是借助于专业的检测工具,比较有名如BoundsCheck,功能非常强大,相信做C++开发的人都离不开它。此外就是不使用任何工具,而是自己来实现对内存泄露的监控,分如下两种情况: 一. 在 MFC 中检测内存泄漏 假如是用MFC的程序的话,很简单。默认的就有内存泄露检测的功能。 我们用VS2005生成了一个MFC的对话框的程序,发现他可以自动...
<< 1191 1192 1193 1194 1195 1196 1197 1198 1199 1200 >>