一、
class="java" name="code">
package test;
/**
* <p>Title: Hello Java World</p>
* <p>Description: 简单的Java程序,只显示一个信息。</p>
* <p>Copyright: Copyright (c) 2014</p>
* <p>filename: HelloWorld.java</p>
* @author llx
* @version 1.0
*/
public class HelloWorld {
public static void main(String[] args){
System.out.println("Hello java world!");
}
}
二、
package test;
/**
* <p>Title: java语言流程显示</p>
* <p>Description:演示java中常用的流程控制操作</p>
* <p>Copyright:Copyright (c) 2014</p>
* <p>Filename: FlowDemo.java</p>
* @author llx
* @version 1.0
*
*/
public class FlowDemo {
public static void main(String[] args){
//String[] abc = new String[]{"1","2","3"};
String[] abc = {"5","3","4"};
int iPara1, iPara2, iEnd;
if(abc.length != 3){
System.out.println("USE : Java flowdemo parameter1 parameter2 circle");
System.out.println("parameter1 : 比较条件1, 数字类型");
System.out.println("parameter2 : 比较条件2, 数字类型");
System.out.println("circle : 循环次数");
System.out.println("ego : java flowdemo 1 2 5");
return;
}else{
iPara1 = Integer.parseInt(abc[0]);
iPara2 = Integer.parseInt(abc[1]);
iEnd = Integer.parseInt(abc[2]);
}
//if语句
if(iPara2> iPara1){
System.out.println("if条件满足!");
System.out.println("第2个数比第一个数大!");
}else{
System.out.println("if条件不满足");
System.out.println("第2个数比第一个数小!");
}
//for循环
for(int i = 0; i < iEnd; i++){
System.out.println("这是for第 " + i + "次循环");
}
//while循环
int i = 0;
while (i < iEnd){
System.out.println("这是while第" + i + "次循环" );
i++;
}
//do-while循环操作
int j = 0;
do{
System.out.println("这是do-while第" + j + "次循环");
j++;
}while(j < iEnd);
}
}
三、
package test;
/**
* <p>Title: 数组数据操作</p>
* <p>Description: 演示一维数组和多维数组的初始化和基本操作
* <p>Copyright: Copyright (c) 2014</p>
* <p>Filename: MyArray.java
* @author llx
* @version 1.0
*
*/
public class MyArray {
//初始化数组变量
char[] cNum = {'1', '2', '3', '4', '5', '6', '7', '8', '9', '0' };
char[] cStr = {'a', 'b', 'c', 'd', 'e', 'f', 'g', 'h', 'i', 'j', 'k', 'l', 'm', 'n', 'o', 'p', 'q', 'r', 's', 't', 'u',
'v', 'w', 'x', 'y', 'z'};
int[] iMonth = {31, 28, 31, 30, 31, 30, 31, 31, 30, 31, 30, 31};
String[] sMail = {"@", "."};
/**
* <br>方法说明: 校验电子邮件
* <br>输入参数:String sPara 被校验的电子邮件字符
* <br>返回类型:boolean 如果检验的格式符合电子邮件格式返回true;否则返回false
*/
public boolean isMail(String sPara){
for(int i = 0; i < sMail.length; i ++){
if(sPara.indexOf(sMail[i]) == -1){
return false;
}
}
return true;
}
/**
* <br>方法说明:判断是否是数字
* <br>输入参数:String sPara. 需要判断的字符串
* <br>返回类型:boolean。如果都是数字,返回true;否则返回false
*
*/
public boolean isNumber(String sPara){
int iPLength = sPara.length();
for(int i = 0; i < iPLength; i ++){
char cTemp = sPara.charAt(i);
boolean bTemp = false;
for(int j = 0; j < cNum.length; j++){
if(cTemp == cNum[j]){
bTemp = true;
break;
}
}
if(!bTemp){
return false;
}
}
return true;
}
/**
* <br>方法说明:判断是否都是英文
* <br>输入参数:String sPara 要检查的字符
* <br>返回类型:boolean. 如果都是字符返回true,反之为false
*/
public boolean isString(String sPara){
int iPLength = sPara.length();
for(int i =0; i < iPLength; i++){
char cTemp = sPara.charAt(i);
boolean bTemp = false;
for(int j = 0; j < cStr.length; j++){
if(cTemp == cStr[j]){
bTemp = true;
break;
}
}
if(!bTemp){
return false;
}
}
return true;
}
/**
* <br>方法说明:判断是否是闰年
* <br>输入参数: String sPara 要检查的日期字符
* <br>返回类型: int。 0 日期格式正确,-1 月或日不和要求, -2年月格式不正确
*/
public boolean chickDay(int iPara){
return iPara % 100 == 0 && iPara % 4 == 0;
}
public int chickData(String sPara){
boolean bTemp = false;
//所输入的日期长度不正确
if(sPara.length() != 10) {
return -2;
}
//获取年
String sYear = sPara.substring(0, 4);
//判断年是否为数字
if(!isNumber(sYear)){
return -2;
}
//获取月份
String sMonth = sPara.substring(5, 7);
//判断月份是否为数字
if(!isNumber(sMonth)){
return -2;
}
//获取日
String sDay = sPara.substring(8, 10);
//判断日是否为数字
if(!isNumber(sDay)){
return -2;
}
//将年、月、日转换为数字
int iYear = Integer.parseInt(sYear);
int iMon = Integer.parseInt(sMonth);
int iDay = Integer.parseInt(sDay);
if(iMon > 12){
return -1;
}
//闰年二月处理
if(iMon == 2 && chickDay(iYear)){
if(iDay > 29){
return -2;
}else{
if(iDay > iMonth[iMon - 1]){
return -1;
}
}
}
return 0;
}
/**
* <br>方法说明: 主方法,测试用
* <br>输入参数:
* <br>返回类型:
*/
public static void main(String[] args){
MyArray mA = new MyArray();
//检验邮件地址
boolean bMail = mA.isMail("tom@163.com");
System.out.println("1 bMail is " + bMail);
bMail = mA.isMail("tom@163com");
System.out.println("2 bMail is" + bMail);
//演示是否为数字
boolean bIsNum = mA.isNumber("1234");
System.out.println("1: bIsNum = " + bIsNum);
bIsNum = mA.isNumber("123r4");
System.out.println("2: bIsNum = " + bIsNum);
//演示是否为英文字符
boolean bIsStr = mA.isString("wqe");
System.out.println("1: bIsStr = " + bIsStr);
bIsStr = mA.isString("wer3");
System.out.println("2: bIsStr = " + bIsStr);
//演示检查日期
int iIsTime = mA.chickData("2003-12-98");
System.out.println("1: iIsTime = " + iIsTime);
iIsTime = mA.chickData("2003-111-08");
System.out.println("2: iIsTime = " + iIsTime);
iIsTime = mA.chickData("2003-10-08");
System.out.println("3: iIsTime = " + iIsTime);
iIsTime = mA.chickData("2000-02-30");
System.out.println("4: iIsTime = " + iIsTime);
}
}
四、
package test;
import java.util.Vector;
/**
* <p>Title:矢量操作</p>
* <p>Description: 演示一个矢量(Vector)的基本操作</p>
* <P>Copyright:(c) 2014</p>
* <p>Filename: OperateVector.java</p>
* @author llx
* @version 1.0
*
*/
public class OperateVector {
/**
* <br>方法说明:生成一个4*4的二维Vector,供使用
* <br>输入参数:
* <br>输出变量:Vector
* <br>其它说明
*/
public Vector buildVector(){
Vector vTemps = new Vector();
for(int i = 0; i < 4 ; i++){
Vector vTemp = new Vector();
for(int j= 0; j < 4; j++){
vTemp.addElement("Vector (" + i + ") (" + j + ")");
}
vTemps.addElement(vTemp);
}
return vTemps;
}
/**
* <br>方法说明:插入数据
* <br>输入参数:Vector vTemp 待插入的数据对象
* <br>输入参数: int iTemp 插入数据的位置
* <br>输入参数: Object oTemp 插入数据值
* <br>输出变量: Vector结果
* <br>其它说明: 如果插入位置超出实例实际的位置将返回null;
*/
public Vector insert(Vector vTemp, int iTemp, Object oTemp){
if(iTemp > vTemp.size()){
//System.out.println("数据超界!");
print("数组超界!");
return null;
}else{
vTemp.insertElementAt(oTemp, iTemp);
}
return vTemp;
}
/**
* <br>方法说明:移除数据
* <br>输入参数:Vector vTemp 待删除矢量对象
* <br>输入参数: int iTemp 删除数据的位置
* <br>输出变量: Vector
* <br>其它说明: 如果删除超界的数据,将返回null
*/
public Vector delete(Vector vTemp, int iTemp){
if(iTemp > vTemp.size()){
//System.out.println("数组超界!");
print("数组超界!");
}else{
vTemp.remove(iTemp);
}
return vTemp;
}
/**
* <br>方法说明:修改数据
* <br>输入参数:Vector vTemp 待修改矢量对象
* <br>输入参数:int iTemp 修改数据的位置
* <br>输入参数: Object oTemp 修改数据值
* <br>输出变量: Vector
* <br>其它说明: 如果修改位置超界的数据,将返回null
*/
public Vector update(Vector vTemp, int iTemp, Object oTemp){
if(iTemp > vTemp.size()){
//System.out.println("数据超界!");
print("数组超界!");
return null;
}else{
vTemp.setElementAt(oTemp, iTemp);
}
return vTemp;
}
/**
* <br>方法说明:输出信息
* <br>输入参数:String sTemp 输出信息
* <br>输入参数:Object oTemp 输出信息值
* <br>返回变量:无
*/
public void print(String sTemp, Vector oTemp){
System.out.println(sTemp + "数据:");
this.print( oTemp);
}
/**
* <br>方法说明:打印输出(重载)
* <br>输入参数: Object oPara 输出对象
* <br>返回类型:无
*/
public void print(Object oPara){
System.out.println(oPara);
}
/**
* <br>方法说明: 打印输出(重载)
* <br>输入参数: Vector vPara 显示输出矢量对象
* <br>返回类型:无
*/
public void print(Vector vPara){
for(int i = 0; i < vPara.size(); i++){
System.out.println(vPara.elementAt(i));
}
}
/**
* <br>方法说明:主方法,程序入口
* <br>输入参数:String[] args
* <br>返回类型: 无
*/
public static void main(String[] args){
OperateVector ov = new OperateVector();
Vector vTemp = ov.buildVector();
ov.print("vTemp0", vTemp);
Vector vResult = ov.insert(vTemp, 2, "添加的数据");
ov.print("vResult",vResult);
Vector vResultup = ov.update(vResult, 2, "修改的数据");
ov.print("vResultup", vResultup);
Vector vResultnow = ov.delete(vResultup, 2);
ov.print("vResultnow", vResultnow);
}
}
五、、
package test;
/**
* <p>Title: 树参数</p>
* <p>Description: 使用继承类,柳树就是树</p>
* <p>Copyright: Copyright (c) 2014 </p>
* <p>Filename: Osier.java
* @author llx
* @version 1.0
*
*/
class Tree{
/**
* <br>方法说明:
* <br>输入参数:
* <br>返回类型:
*/
public void root(){
String sSite = "土壤中";
String sFunction = "吸收养分";
print("位置:" + sSite);
print("功能:" + sFunction);
}
/**
* <br>方法说明:树的树干
* <br>输入参数:
* <be>返回类型
*/
public void bolo(){
String sSite = "地面";
String sFunction = "传递养分";
print("位置:" + sSite);
print("功能:" + sFunction);
}
/**
* <br>方法说明: 树的树枝
* <br>输入参数:
* <br>返回类型
*/
public void branch(){
String sSite = "树干上";
String sFunction = "传递养分";
print("位置:" + sSite);
print("功能:" + sFunction);
}
/**
*<br>方法说明: 树的叶子
*<br>输入参数:
*<br>返回类型
*/
public void leaf(){
String sSite = "树梢";
String sFunction = "光合作用";
String sColor = "绿色";
print("位置: " + sSite);
print("功能:" + sFunction);
print("颜色:" + sColor);
}
/**
* <br>方法说明:显示信息
* <br>输入参数: Object oPara 显示信息
* <br>返回类型:
*/
public void print(Object oPara){
System.out.println(oPara);
}
/**
* <br>方法说明:主方法
* <br>输入参数:
* <br>返回类型:
*/
public static void main(String[] args){
Tree t = new Tree();
t.print("描述一棵树");
t.print("树根:");
t.root();
t.print("树干:");
t.bolo();
t.print("树枝:");
t.branch();
t.print("树叶");
t.leaf();
}
}
/**
* <p>Title: 柳树参数</p>
* <p>Description: 描述柳树的参数</p>
* <p>Copyright: Copyright (c) 2014 </p>
* <>Filename: Osier.java </p>
* @author llx
* @version 1.0
*
*/
class Osier extends Tree {
/**
* <br>方法说明: 重载树的叶子
* <br>输入参数:
* <br>返回类型:
*/
public void leaf(){
super.leaf();
String sShape = "长形";
super.print("形状: " +sShape);
}
/**
* <br>方法说明: 扩展树的花
* <br>输入参数:
* <br>返回类型:
*/
public void flower(){
print("哈哈,柳树没有花!!");
}
/**
* <br>方法说明:主方法
* <br>输入参数:
* <br>返回类型:
*/
public static void main(String[] args){
Osier o = new Osier();
o.print("柳树树根:");
o.root();
o.print("柳树树干:");
o.bolo();
o.print("柳树树枝:");
o.branch();
o.print("柳树树叶:");
o.leaf();
o.print("柳树花:");
o.flower();
}
}
六、
package test;
import java.util.Enumeration;
import java.util.Hashtable;
/**
* <p>Title: 哈希表操作</p>
* <p>Description: 这是一个权限认证的例子,使用了哈希表作为数据的存储</p>
* <p>Copyright: Copyright (c) 2014 </p>
* <p>Filename: RoleRight.java</p>
* @author llx
* @version 1.0
*
*/
public class RoleRight {
private static Hashtable rightList = new Hashtable();
/**
* <br>方法说明:初始化数据
* <br>输入参数:
* <br>返回类型
*/
public void init(){
String[ ] accRoleList = {"admin", "satrap", "manager", "user", "guest"};
String[ ] rightCodeList = {"10001", "10011", "10021", "20011", "24011"};
for(int i = 0; i < accRoleList.length; i++){
rightList.put(accRoleList[i], rightCodeList[i]);
}
}
/**
* <br>方法说明:获取角色权限代码
* <br>输入参数:String accRole 角色名称
* <br>返回类型:String 权限代码
*/
public String getRight(String accRole){
if(rightList.containsKey(accRole)){
return (String)rightList.get(accRole);
}else{
return null;
}
}
/**
* <br>方法说明:添加角色和代码信息
* <br>输入参数:String accRole 角色名称
* <br>输入参数:String rightCode 角色权限代码
* <br>返回类型:void (无)
*/
public void insert(String accRole, String rightRole){
rightList.put(accRole, rightRole);
}
/**
* <br>方法说明:删除角色权限
* <br>输入参数:String accRole 角色名称
* <br>返回类型:void (无)
*/
public void delete(String accRole){
if(rightList.containsKey(accRole)){
rightList.remove(accRole);
}
}
/**
* <br>方法说明:修改角色权限代码
* <br>输入参数:String accRole 角色名称
* <br>输入参数:String rightRole 角色权限代码
* <br>返回类型:void(无)
*/
public void update(String accRole, String rightCode){
this.insert(accRole, rightCode);
}
/**
* <br>方法说明:打印哈希表中角色和代码对应表
* <br>输入参数:无
* <br>返回类型:无
*/
public void print(){
Enumeration RLKey = rightList.keys();
while(RLKey.hasMoreElements()){
String accRole = RLKey.nextElement().toString();
print(accRole + "=" + this.getRight(accRole));
}
}
/**
* <br>方法说明:打印信息(重载)
* <br>输入参数:Object oPara 打印的信息内容
* <br>返回类型:无
*/
public void print(Object oPara){
System.out.println(oPara);
}
/**
* <br>方法说明:主方法
* <br>输入参数:
* <br>返回类型:
*/
public static void main(String[] args){
RoleRight RR = new RoleRight();
RR.init();
RR.print();
RR.print("__________________");
RR.insert("presider", "10110");
RR.print();
RR.print("__________________");
RR.update("presider", "10100");
RR.print();
RR.print("__________________");
RR.delete("presider");
RR.print();
}
}
七、
/**
* <p>Title: 接口和抽象函数
* <p>Description: 演示继承抽象函数和实现接口</p>
* <p>Copyright: Copyright (c) 2014 </p>
* <p>Filename: NewPlay.java
* @author llx
* @version 1.0
*
*/
//接口
interface Player{
int flag = 1;
void play();//播放
void pause();//暂停
void stop();//停止
}
//抽象类
abstract class Playing{
public void display(Object oPara){
System.out.println(oPara);
}
abstract void winRun();
}
//继承了Playing抽象类和实现类Player接口
public class NewPlay extends Playing implements Player{
@Override
public void play() {
display("NewPlay.play()");//这里只是演示,去掉了代码。
}
@Override
public void pause() {
display("NewPlay.pause()");//这里只是演示,去掉了代码
}
@Override
public void stop() {
display("NewPlay.stop()");//这里只是演示,去掉了代码
}
@Override
void winRun() {
display("NewPlay.winRun()");//这里只是演示,去掉了代码
}
public static void main(String[] args){
NewPlay p = new NewPlay();
p.play();
p.pause();
p.stop();
p.winRun();
}
}
八、
package com.test;
/**
* <p>Title: 标识符</p>
* <p>Description: 演示标识符对类的访问控制</p>
* <p>Copyright: Copyright (c) 2014</p>
* <p>Filename: </p>
* @author llx
* @version 1.0
*/
public class ClassPlay
{
public static void main(String[] args){
ClassDemo1 d = new ClassDemo1();
d.mechod1();
d.mechod2();
d.mechod3(); //此处会报错。这是一个私有的方法!只有类本身才可以访问。
}
}
////////
package com.test;
/**
* <p>Title: 标识符</p>
* <p>Description: 演示标识符对类的访问控制</p>
* <p>Copyright: Copyright (c) 2014</p>
* <p>Filename: </p>
* @author llx
* @version 1.0
*/
public class ClassDemo1
{
//公有方法
public void mechod1()
{
System.out.println("这是一个公有的方法!任何类都可以访问。");
}
//授保护的方法
protected void mechod2()
{
System.out.println("这是一个受到保护的方法!只有子类可以访问。");
}
//私有的方法
private void mechod3()
{
System.out.println("这是一个私有的方法!只有类本身才可以访问。");
}
public static void main(String[] args){
ClassDemo1 d = new ClassDemo1();
d.mechod1();
d.mechod2();
d.mechod3();
}
}
/////////
package com.utils;
import com.test.ClassDemo1;
/**
* <p>Title: 标识符</p>
* <p>Description: 演示标识符对类的访问控制</p>
* <p>Copyright: Copyright (c) 2014</p>
* <p>Filename: </p>
* @author llx
* @version 1.0
*/
public class ClassPlay
{
public static void main(String[] args){
ClassDemo1 d = new ClassDemo1();
d.mechod1();
d.mechod2(); //此处会报错。这是一个受到保护的方法!只有子类可以访问。
d.mechod3(); //此处会报错。这是一个私有的方法!只有类本身才可以访问。
}
}
九、
/**
* <p>Title: 捕获异常和实现自己的异常类</p>
* <p>Description: 通过继承Exception类来实现自己的异常类。并使用try-catch来捕获这个异常。</p>
* <p>Copyright: Copyright (c) 2014</p>
* <p>Filename: DemoException.java</p>
* @author llx
* @version 1.0
*/
class MyException extends Exception {
public MyException() {}
public MyException(String msg) {
super(msg);
}
public MyException(String msg, int x) {
super(msg);
i = x;
}
public int val() { return i; }
private int i;
}
public class DemoException {
/**
*<br>方法说明:使用MyException类中默认的构造器
*<br>输入参数:
*<br>返回类型:
*/
public static void a() throws MyException {
System.out.println(
"Throwing MyException from a()");
throw new MyException();
}
/**
*<br>方法说明:使用MyException类中带信息的构造器
*<br>输入参数:
*<br>返回类型:
*/
public static void b() throws MyException {
System.out.println(
"Throwing MyException from b()");
throw new MyException("Originated in b()");
}
/**
*<br>方法说明:使用了MyException中有编码的构造器
*<br>输入参数:
*<br>返回类型:
*/
public static void c() throws MyException {
System.out.println(
"Throwing MyException from c()");
throw new MyException(
"Originated in c()", 47);
}
public static void main(String[] args) {
try {
a();
} catch(MyException e) {
e.getMessage();
}
try {
b();
} catch(MyException e) {
e.toString();
}
try {
c();
} catch(MyException e) {
e.printStackTrace();
System.out.println("error code: " + e.val());
}
}
}