1.关于Java
一.Java简介
1.java语言的特性
java语言的重要特性:跨平台: 一次编译,到处运行。
2.java的环境搭建:
1.JRE: java运行环境。 JRE = java 虚拟机 + 核心类库(辅助java虚拟机运行的文件) 2.JDK: java开发工具集. JDK = java开发工具 + jre.
3.jdk的目录介绍:
bin : 存放的就是java开发工具的可执行文件。
db: sum公司自带的一个数据库。
include: 存储的是本地方法的文件。
jre: java虚拟机的文件夹
lib : 核心类库文件。
src : 源代码文件。 java语言是开源的。
4.目前要使用到的java开发工具:
1.javac.exe : 启动java编译器对java源文件进行编译。 使用格式:
javac java源文件. 2.java.exe : 启动java虚拟机解释并执行指定的class文件。 使用格式:
java class文件 注意: 不需要后缀名。
二.临时变量
临时环境变量: 临时环境变量仅对于当前控制台窗口起作用。 set的命令的用法:
set : 查看所有的环境变量信息。
set 环境变量名 :查看指定的环境变量。
set 环境变量名=路径 :修改指定的环境变量信息。
set 环境变量名= :清空指定的环境变量信息。
set 环境变量名 = 新路径;%引用的环境变量名% :在原有的环境变量信息基础上添加新的路径信息。
三.classpath环境变量信息:
classpath的作用: 我们在控制台上启动java虚拟机的时候,
情况1: 如果没有配置classpath的环境变量信息,那么java虚拟机会在当前控制台所在的路径下去搜索
是否存在指定的class文件,如果没有搜索到那么就报错。 情况2: 如果已经配置了classpath的环境变量信息,那么java虚拟机在启动的时候就会根据classpath指定的路径
下去搜索指定的class文件。 配置classpath环境变量信息的时候加上分号与不加分号的区别:
不加上分号那么java虚拟机就仅会在classpath指定的路径下去搜索,不会再当前路径下去搜索。
如果加上了分号,那么java虚拟机除了在classpath指定的路径下去去搜索以外,还会在当前路径下去搜索。
注意: 不建议大家配置classpath的环境变量信息。
四.自定义标识符
/*
自定义标识符:在java中有些名字是需要自己定义的,那么我们就把这些称作为自定义标示符。 标识符的要注意的细节:
1. 标识符的组成元素是 字母(a-z A-Z),数字(0~9) 、下划线(_)、 美元符号($)
2. 标识符不能以数字开头。
3. java的标示符是严格区分大小写的。
4. 标识符的长度可以是任意。
5. 自定义的标识符名称一般要有意义。
6. 关键字、保留字(goto)不能用于自定义的标识符。 标识符的命名规范:
1. 类名、接口名的命名规范: 单词的首字母大写,其他字母小写。 比如: LastTime
2. 变量名、方法名的命名规范: 首单词全部小写,其他单词的首字母大写,其他小写。 比如: userName
3. 包名的命名规范: 全部小写。 比如: itcast
4. 常量名的命名规范: 全部大写,单词与单词之间使用下划线分隔。 比如: UP_DIRECTION 判断下面那些是符合的标示符:
abc_123 合法
_123abc 合法
abc%123 不合法
abc123 合法
$_abc123 合法
123abc 不合法 关键字:在java程序中有些标识符是有着特殊含义的,而我们就把这些有着特殊含义的标识符就称作为关键字。 关键字一般用于表示一个程序的结构或者是数据类型。 */ class Demo2{ public static void main(String[] args)
{
System.out.println("Hello World!");
}
}
五,注释
注释: 注释就是使用文字对程序的说明,注释是写给程序员看的,java编译器会忽略注释的内容。
注释的类型:
单行注释: 实现方式: // 注释的内容 多行注释: 实现方式: /* */ 文档注释: 实现方式: /** 注释的内容 */
注释要注意的细节:
1. 单行注释可以嵌套使用,多行注释是不能嵌套使用的。
2. 一般单行注释都是在写在代码的右边, 多行注释一般写在代码的上方。
3. 文档注释也是多行注释。
举例:
class Demo3
{
/**
这个是一个主方法,
是程序的主入口 程序是从这里开始执行的,
如果一个需要独立运行,那么则需要主方法。
*/
public static void main(String[] args)
{
System.out.println("请输入用户名与密码");
System.out.println("aaa..."); // 这句语句是用于测试,没个鸟用。
System.out.println("校验用户名与密码");
System.out.println("展示好友列表..");
}
}
六.开发者文档
软件:用户帮助文档 + 开发人员的帮助文档。
文档注释与多行注释的区别: 文档注释的内容可以用于生成一个开发者文档。
如果需要生成一个开发者文档需要使用到java的开发工具---javadoc.exe
如何使用javadoc工具,
javadoc的使用格式:
javadoc -d 存储文档的路径 java的源文件。
生成开发者文档要注意的细节:
1. 如果一个类需要生成开发者文档,那么需要使用关键字public 修饰该类, 让该类是公共的。
2. 文档注释一定要位于一个类的上方或者是一个方法的上方。 否则注释的内容也没法抽取。
注释的作用:
1. 使用文字对程序的说明。
2. 注释可以用于调试使用。
举例:
/**
该类是用于模拟QQ的登陆过程的。写得不好不要喷!!
@version 1.0
@author 0416java基础班
*/ public class Demo4{ /**
QQ的登陆过程:
1.要用户用户名与密码。
2.校验用户名与密码
3.展示好友列表
*/
public static void main(String[] args)
{ System.out.println("请输入用户名与密码");
System.out.println("校验用户名与密码");
System.out.println("展示好友列表..");
} }
1.关于Java的更多相关文章
- Spark案例分析
一.需求:计算网页访问量前三名 import org.apache.spark.rdd.RDD import org.apache.spark.{SparkConf, SparkContext} /* ...
- 故障重现(内存篇2),JAVA内存不足导致频繁回收和swap引起的性能问题
背景起因: 记起以前的另一次也是关于内存的调优分享下 有个系统平时运行非常稳定运行(没经历过大并发考验),然而在一次活动后,人数并发一上来后,系统开始卡. 我按经验开始调优,在每个关键步骤的加入如 ...
- Elasticsearch之java的基本操作一
摘要 接触ElasticSearch已经有一段了.在这期间,遇到很多问题,但在最后自己的不断探索下解决了这些问题.看到网上或多或少的都有一些介绍ElasticSearch相关知识的文档,但个人觉得 ...
- 论:开发者信仰之“天下IT是一家“(Java .NET篇)
比尔盖茨公认的IT界领军人物,打造了辉煌一时的PC时代. 2008年,史蒂夫鲍尔默接替了盖茨的工作,成为微软公司的总裁. 2013年他与微软做了最后的道别. 2013年以后,我才真正看到了微软的变化. ...
- 故障重现, JAVA进程内存不够时突然挂掉模拟
背景,服务器上的一个JAVA服务进程突然挂掉,查看产生了崩溃日志,如下: # Set larger code cache with -XX:ReservedCodeCacheSize= # This ...
- 死磕内存篇 --- JAVA进程和linux内存间的大小关系
运行个JAVA 用sleep去hold住 package org.hjb.test; public class TestOnly { public static void main(String[] ...
- 【小程序分享篇 一 】开发了个JAVA小程序, 用于清除内存卡或者U盘里的垃圾文件非常有用
有一种场景, 手机内存卡空间被用光了,但又不知道哪个文件占用了太大,一个个文件夹去找又太麻烦,所以我开发了个小程序把手机所有文件(包括路径下所有层次子文件夹下的文件)进行一个排序,这样你就可以找出哪个 ...
- Java多线程基础学习(二)
9. 线程安全/共享变量——同步 当多个线程用到同一个变量时,在修改值时存在同时修改的可能性,而此时该变量只能被赋值一次.这就会导致出现“线程安全”问题,这个被多个线程共用的变量称之为“共享变量”. ...
- Java多线程基础学习(一)
1. 创建线程 1.1 通过构造函数:public Thread(Runnable target, String name){} 或:public Thread(Runnable target ...
- c#与java的区别
经常有人问这种问题,用了些时间java之后,发现这俩玩意除了一小部分壳子长的还有能稍微凑合上,基本上没什么相似之处,可以说也就是马甲层面上的相似吧,还是比较短的马甲... 一般C#多用于业务系统的开发 ...
随机推荐
- electron打包之真的恶心
用electron-packager进行打包 这个模块的文档写的真的垃圾 1.先看看首页的参数介绍 就是说必选参数就是源码路径和app名字和--platform还有--arch咯,而且源码路径也没说是 ...
- iptables(3)
----------------------------iptables企业应用 ****************************单机防火墙列表#!/bin/bash#============ ...
- nginx.conf(centos6, 1.12)主配置文件修改
#nginx1.12 centos6.xuser admin admin;worker_processes 4; error_log /data/services/logs/nginx_error.l ...
- 通过pycharm将代码push到远程仓库
现在使用pycharm作为python编辑器的人还是不少,而且,也可以通过pycharm将代码push到远程仓库. 步骤见下面截图: 填上远程仓库地址及克隆到本地的目录 输入远程仓库的账号和密码 修改 ...
- CF1142C U2(计算几何,凸包)
题目大意:平面上有 $n$ 个点,第 $i$ 个点是 $(x_i,y_i)$.问有多少条抛物线(二次项系数为 $1$),经过这些点中不同的两个点,并且内部(不含边界)没有任何这些点.重合的抛物线只算一 ...
- http_proxy_module模块常用参数
Nginx的upstream模块相当于是建立一个函数库一样,把后端的服务器地址放在了一个池子里,而proxy模块则是从这个池子里调用了这些服务器. http_proxy_module模块常用参数: p ...
- vue-router 如何默认显示三级子路由
{ path: '/aaa', name: 'aaa', title: '统计分析', component: () => import('@/aaa.vue'),//一级子组件.容器 child ...
- poj3889 fractal streets
分形街道 我干,这个毒瘤. 想起来就头痛. 首先看题就是一大难题...... 说一下题目大意吧. 每当n+1时,把n阶图复制为4份.2*2排好. 右边两个不动.左上顺时针旋转90°,左下逆时针旋转90 ...
- 判断ios还是android
$(function(){ var u = navigator.userAgent; var ua = navigator.userAgent.toLowerCase(); var isAndroid ...
- bzoj2434 阿狸的打字机
题目链接 思路 可以发现,其实题目中所描述的操作,就是在\(AC\)自动机上走的过程.输出就是打上标记.删除就是返回父亲节点. 然后看询问.每次询问字符串\(x\)在字符串中\(y\)出现的次数.其实 ...