win7上的linux环境变量,java之环境变量配置win7andlinux.docx
初学java 之 环境变量配置win7 and linux
首先我们了解一下我们要配置的各个变量的含义: bin 可执行文件; lib 是sun官方库文件; src.zip 源代码
JAVA_HOME 配置安装目录
CLASSPATH lib 目录主要为java 查找类服务
PATH 可执行文件的路径,lib 目录可执行文件在所有目录下都能欲行
下面我们讲讲具体的配置过程:
首先打开我的电脑属性 如下图:
点击环境变量:
上面的用户变量只知针对当前用户的变量!建议修改下边的系统变量!
首先新建 JAVA_HOME 在值里面写上你的jdk 的安装路径 譬如我jdk 安装在f 盘 F:\Program Files\Java\jdk1.6.0_10
PATH 里面 F:\Program Files\Java\jdk1.6.0_10\bin;
新建CLASSPATH .;F:\Program Files\Java\jdk1.6.0_10\lib; 注意 前面的 . 表示当前目录 不同的变量之间 用分号隔开
linux 严格区分大小写
在终端输入 vi. bash-profile
进入vi 配置和 win7 的一样 注意的是 不同变量之间 用 冒号 隔开 后跟 $path
保存退出即可
可以用 java-version /javac 来验证是否配置成功!
为什么静态成员不能访问非静态成员
首先static的成员是在类加载的时候初始化的,JVM的CLASSLOADER的加载,首次主动使用加载,而非static的成员是在创建对象的时候,即new 操作的时候才初始化的;
先后顺序是先加载,才能初始化,那么加载的时候初始化static的成员,此时非static的成员还没有被加载必然不能使用,而非static的成员是在类加载之后,通过new操作符创建对象的时候初始化,此时static 已经分配内存空间,所以可以访问!
简单点说:静态成员属于类,不需要生成对象就存在了.而非静态需要生成对象才产生.
所以静态成员不能直接访问.
下面说说静态的特点:
1.随着类的加载而加载
也就是,说静态会随着类的消失而消失,说明静态的生命周期最长
2.优先于对象的存在
明确一点:静态是先存在的对象是后存在的
3.被所有对象共享
4.可以直接被类名多调用
实例变量和类变量的区别
1.存放位置
类变量随着类的加载存在于方法区中,实例变量随着对象的对象的建立存在于堆内存里
2.生命周期
类变量生命周期最长,随着“类”的加载而加载,随着类的消失而消失
实例变量随着“对象”的消失而消失
静态的使用注意事项:
1.静态方法只能访问静态成员(包括成员变量和成员方法)
非静态方法可以访问静态也可以访问非静态
2.静态方法中不可以定义this,super关键字
因为静态优先于对象存在,所以静态方法中不可以出现this,super关键字
3.主函数是静态的。
静态的利弊
利:对 对象的共享数据进行单独空间的存储,节省空间,没有必要没一个对象中都存储一份
可以直接被类名所调用
弊:生命周期过长,访问出现局限性(只能访问静态)
重写与重载常见问题
通常,派生类继承基类的方法,因此,在调用对象继承方法的时候,调用和执行的是基类的实现.但是,有时需要对派生类中的继承方法有不同的实现. 例如,假设动物类存在"跑"的方法,从中派生出马和狗,马和狗的跑得形态是各不相同的,因此同样方法需要两种不同的实现,这就需要"重新编写"基类中的方法
重写只能用于父类与子类之间!
重写的规则: 子类中的方法必须与父类中的方法一致,并且范围只能扩大不能缩小,例如父类中定义的方法是 public 型的 子类中的就不能写成protected 型否则会报编译错误!父类中的定义为protected 型的子类中的可以定义为public型的
重载,在一个类定义中,可以编写几个同名的方法,但是只要它们的签名参数列表不同,Java就会将它们看做唯一的方法。简单的说,一个类中的方法与另一个方法同名,但是参数表不同,这种方法称之为重载方法。
重载是可使函数、运算符等处理不同类型数据或接受不同个数的参数的一种方法
重载的规则: 重载只发生在同类之中,并且只有参数列表不一样(包括参数列表的顺序 、 类型、个数)才可称之为重载,返回值类型不一样参数列表一样不能称之为重载!且 重载的返回值类型可以不一样
下面是重载和重写常见问题:
[java] view plaincopy
1. package test;
2.
3. public class OverLoadDemo {
4.
5. /**
6. [email protected]
7. */
8. public static void main(String[] args) {
9. OverLoadDemo o = new OverLoadDemo();
10. o.method(1, 's');// 没有 与参数一致的方法,这个时候就会有隐式转换 转换时 有就近原则 像 char 转化为 int 更方便故输出woainitingzai
11. }
12. public int method(int a,long b){
13. System.out.println("helloword");
14. return 0;
15. }
16. public long method(int a,short b){// 重载只是看参数列表的顺序 、类型 、个数 是否不一样 才算是重载
17. System.out.println("tingting");// 如果是返回值类型不同 方法名不同等等 都不能算是重载
18. return 0;
19. }
20. public int method(int a,int b){
21. System.out.println("woainitingzai");
22. return 0;
23. }
24. // public short method(int a,int b){ 不是重载编译错误
25. // System.out.println("我爱你婷!");
26. // return 0;
27. // }
28. }
29. class T extends OverLoadDemo{
30. // public long method(int a,long b){编译错误 如果子类的参数列表和父类的参数列表一样 且返回值类型不一样则会报编译错误
31. // System.out.println("hello");
32. // return 0;
33. // }
34. public int method(int a,char c){// 无编译错误也并不是覆盖 覆盖 就是 和父类的方法一样 返回值类型 方法签名都必须一样
35. return 0;
36. }
37. // private long method(int a,short b){//编译错误 如果把父类的这个方法改为private型的就无编译错误
38. // return 0;
39. // }
40. // long method(int a,short b){//缩小了父类的范围编译错误
41. // return 0;
42. // }
43. // protected int method(int a,long b) {//缩小了父类的范围 编译错误
44. // return 0;
45. //
46. // }
47. }
展开阅读全文
win7上的linux环境变量,java之环境变量配置win7andlinux.docx相关推荐
- linux中搭建java开发环境
今天试着在Linux下面搭建java开发环境,现总结一下具体步骤. 1.JDK的安装 执行下面命令安装JDK(首先创建/opt/java目录) tar -xvf jdk-7u9-linux-i586. ...
- 在Mac上使用idea搭建flink java开发环境
1.环境 本文档记录的是使用flink的java API简单地创建应用的过程. 前置条件:需要安装Java.maven和flink. 1.1 Java环境变量 Java需要jdk.path.class ...
- Java环境:Java相关环境
Java环境:Java相关环境 1.与Java相关的环境: Java环境相关配置:在我的另一篇文章中有写,大家可以进行参考: https://blog.csdn.net/qq_45834685/art ...
- linux下设置java,Linux下设置java的环境变量
Linux上设置java的环境变量 首先安装JDK,网上有很多教程,这里就不再赘述,有一点,安装的时候要注意下载和自己的操作系统位数相一致的JDK文件. 1.uname -a 查看自己系统是x64的还 ...
- Linux如何搭建Java部署环境
Java具有着跨平台的特性,一次编写,到处运行,如:将Java程序部署到Linux上也可以运行,但是也是需要借助一些工具,如:JDK,MySql,Tomcat等 为什么是搭建Java部署环境,而不是开 ...
- 如何优雅的在windows(含win7)上执行linux脚本
原文地址 目录 原文地址 前言 下载安装cygwin 配置cygwin的默认shell 配置apt-cyg 工具实现命令安装新的软件和常见的命令 一些配置文件 vimrc配置文件的内容 fish sh ...
- 基于Linux服务器的JAVA开发环境搭建
Linux服务器开发环境搭建 Linux安装Java 一.使用yum查询JDK 二.执行安装命令 三.验证java是否安装成功 四.安装开发环境 Linux安装Nginx 一.安装前环境检查 二.下载 ...
- 将java项目导出jar包,然后转成在windows上的可执行文件(没有java运行环境的电脑也可以)
近期在做一个java串口项目,需要将完整的项目导出.exe文件在没有java环境的电脑上运行,下面是详细的操作步骤以及遇到各种问题的解决办法.. 1.将项目导出jar包,使用的工具是eclipse,该 ...
- 在Win7上用VMWare搭建iOS/iPad开发环境
本文记录了在Win7上用VMWare 9安装Mac OS X Lion 10.7.5的过程,如果你想学习观摩一下iOS的开发,并且和我一样是无MAC的码农屌丝,可以参考一下. 1.物理机配置及操作系统 ...
最新文章
- zTree实现节点修改的实时刷新
- C# 世界坐标 页面坐标 PageUnit PageScale
- 模板方法模式(Template Pattern)
- JAVA数据库编程(JDBC技术)-入门笔记
- C++ Primer 5th笔记(chap 14 重载运算和类型转换)标准库函数对象
- ServletRequest HttpServletRequest 请求方法 获取请求参数 请求转发 请求包含 请求转发与重定向区别 获取请求头字段...
- [Leetcode]62. Unique Paths
- 路由器用到坏才换?路由器你在乎哪些功能?
- SOT23-6封装随机数发生芯片,串行接口
- jsp中实现文件下载 两种方法
- Android中ICS4.0Launcher中Fold的功能详解【androidICS4.0--Launcher系列三】
- gc android,Android GC Log解读
- 日留存、周留存、月留存,究竟怎样才能让更多的用户留下来?
- extjs中什么时候用{},什么时候用[]
- 使用一个插件将Zend Framework应用程序的内容转换为xml
- matlab_exercise(2)----输入一个三位数,依次输出其个位数字,十位数字,百位数字...
- Google Code Review 如何进行代码审查
- 络达1562系统深度睡眠后RTC唤醒应用
- qt QAxObject word文档添加页码(页眉和页脚)
- 360c301路由器安装openwrt18.06usb打印服务器
热门文章
- RecycleVier的简单实现
- android studio防止反编译,防反编译利器-Android studio混淆代码压缩apk包体积
- mysql导出kml_谷歌地图如何导出kml文件 导出kml文件教程
- 内温的整体优先效应实验_[心理学复习.doc
- python保存数据db_python存储数据到mongodb
- 模型描述的关系模式_框架篇:见识一下linux高性能网络IO+Reactor模型
- 源码编译打包_Atlas 2.1.0 实践(1)—— 编译Atlas
- centos+gitlab+mysql_centos7安装配置gitlab(使用外部nginx)
- OpenShift Security 14 - 使用 RHACS 中的进程基线功能找出在容器中运行的风险操作
- OpenShift 4 - 容器应用备份和恢复