java源代码内容 java源代码怎么运行

Java100行以上源代码,至少五个class以及一个interface,可以简单点?

下面是一个可能的Java源代码,它包含了一个接口(Shape)和五个类(Circle, Rectangle, Triangle, Square 和 Main)。它的功能是计算不同形状的面积和周长。

10年积累的成都网站建设、做网站经验,可以快速应对客户对网站的新想法和需求。提供各种问题对应的解决方案。让选择我们的客户得到更好、更有力的网络服务。我虽然不认识你,你也不认识我。但先网站设计后付款的网站建设流程,更有裕华免费网站建设让你可以放心的选择与我们合作。

//定义一个接口Shape,有两个抽象方法:getArea()和getPerimeter()interface Shape { double getArea(); double getPerimeter();

}//定义一个类Circle,实现Shape接口class Circle implements Shape { //定义一个私有属性radius,表示圆的半径

private double radius; //定义一个公有构造方法,用于初始化radius

public Circle(double radius) { this.radius = radius;

} //实现getArea()方法,返回圆的面积

public double getArea() { return Math.PI * radius * radius;

} //实现getPerimeter()方法,返回圆的周长

public double getPerimeter() { return Math.PI * radius * 2;

}

}//定义一个类Rectangle,实现Shape接口class Rectangle implements Shape { //定义两个私有属性width和height,表示矩形的宽度和高度

private double width; private double height; //定义一个公有构造方法,用于初始化width和height

public Rectangle(double width, double height) { this.width = width; this.height = height;

} //实现getArea()方法,返回矩形的面积

public double getArea() { return width * height;

} //实现getPerimeter()方法,返回矩形的周长

public double getPerimeter() { return (width + height) *2;

}

}//定义一个类Triangle,实现Shape接口class Triangle implements Shape { //定义三个私有属性a,b,c表示三角形的三条边长

private double a; private double b; private double c; //定义一个公有构造方法,用于初始化a,b,c,并检查是否满足三角形条件(任意两边之和大于第三边)

public Triangle(double a, double b, double c) throws Exception{ if (a + b c a + c b b + c a) {

this.a = a; this.b = b;

this.c = c;

} else {

throw new Exception("Invalid triangle");

}

} //实现getArea()方法,返回三角形的面积(使用海伦公式)

public double getArea() { //计算半周长p

double p = (a + b + c) /2; //计算并返回面积s(使用Math.sqrt()函数求平方根)

return Math.sqrt(p * (p - a) * (p - b) * (p - c));

} //实现getPerimeter()方法,返回三角形的周长

public double getPerimeter(){ return a + b + c;

}

}//定义一个类Square,继承Rectangle类,并重写构造方法和toString()方法class Square extends Rectangle { //重写构造方法,在调用父类构造方法时传入相同的参数side作为width和height

public Square(double side){ super(side, side);

} //重写toString()方法,在原来基础上加上"Square:"前缀,并只显示side属性而不显示width和height属性(使用String.format()函数格式化字符串)

@Override

public String toString(){ return String.format("Square: side=%.2f", super.width); /* 或者直接使用super.getPerimeter()/4作为side */

/* return String.format("Square: side=%.2f", super.getPerimeter()/4); */

/* 注意:不能直接访问super.side属性,

java源代码分析 实在是不太会,求高手教教我。

package test2;

import java.io.BufferedReader;

import java.io.File;

import java.io.FileInputStream;

import java.io.FileOutputStream;

import java.io.IOException;

import java.io.InputStream;

import java.io.InputStreamReader;

import java.util.HashMap;

import java.util.Map;

import java.util.Set;

public class JavaCodeAnalyzer {

public static void analyze(File file) throws IOException{

//FileOutputStream fos = new FileOutputStream("F;"+File.separator+"result.txt");

if(!(file.getName().endsWith(".txt")||file.getName().endsWith(".java"))){

System.out.println("输入的分析文件格式不对!");

}

InputStream is= new FileInputStream(file);

BufferedReader br= new BufferedReader(new InputStreamReader(is));

String temp;

int count=0;

int countSpace=0;

int countCode=0;

int countDesc=0;

MapString, Integer map = getKeyWords();

while((temp=br.readLine())!=null){

countKeys(temp, map);

count++;

if(temp.trim().equals("")){

countSpace++;

}else if(temp.trim().startsWith("/*")||temp.trim().startsWith("//")){

countDesc++;

}else{

countCode++;

}

}

System.out.printf("代码行数:"+countCode+"占总行数的%4.2f\n",(double)countCode/count);

System.out.printf("空行数:"+countSpace+"占总行数的%4.2f\n",(double)countSpace/count);

System.out.printf("注释行数:"+countDesc+"占总行数的%4.2f\n",(double)countDesc/count);

System.out.println("总行数:"+count);

System.out.println("出现最多的5个关键字是:");

System.out.println("");

System.out.println("");

System.out.println("");

System.out.println("");

System.out.println("");

}

public static void main(String[] args) {

getKeyWords();

File file = new File("F://Test.java");

try {

analyze(file);

} catch (IOException e) {

// TODO 自动生成 catch 块

e.printStackTrace();

}

}

public static MapString,Integer getKeyWords(){

MapString,Integer map = new HashMapString, Integer();

String[]keywords = {"abstract","assert","boolean","break","byte","case","catch","char","class","continue","default","do","double","else","enum","extends","final","finally","float","for","if","implements","import","instanceof","int","interface","long","native","new","package","private","protected","public","return","    strictfp","short","static","super","    switch","synchronized","this","throw","throws","transient","try","void","volatile","while","goto","const"};

for(String s:keywords){

map.put(s, 0);

}

return map;

}

public static void countKeys(String s,MapString,Integer map){

SetString keys = map.keySet();

for(String ss:keys){

if(s.indexOf(ss)!=-1){

map.put(ss, map.get(ss)+1);

}

}

}

}

上班没啥时间了,还有点没写完,你在想想。

java求源代码

你是青鸟的吧 这我写过 有源码 这里怎么上传压缩包啊

package ghhh;

import java.util.Scanner;

public class DvD {

public static void main(String[] args) {

int state[]=new  int[6];

String name[]=new  String[6];

int date[]=new int[6];

int count[]=new int [6];

name[0]="权利的游戏";

name[1]="命运之夜";

name[2]="傲慢与偏见";

state[0]=1;

state[1]=0;

state[2]=1;

date[0]=13;

date[1]=0;

date[2]=9;

count[0]=23;

count[1]=23;

count[2]=23;

int n;

// boolean n=false;

do{

System.out.println("欢迎使用迷你DVD管理器");

System.out.println("1.新增DVD");

System.out.println("2.查看DVD");

System.out.println("3.删除DVD");

System.out.println("4.借出DVD");

System.out.println("5.归还DVD");

System.out.println("6.退出DVD");

Scanner input =new Scanner(System.in);

System.out.println("请选择:");

 n=input.nextInt();

switch(n){

case 1:

System.out.println("请输入要增加DVD的名称:");

String name1=input.next();

boolean flag=false;

for(int i=0;iname.length;i++){

if(name[i]==null){

name[i]=name1;

flag=true;

break;

}

}

if(flag){

System.out.println("新增DVD"+name1+"成功");

}else{

System.out.println("货架已满!增加失败!");

}

System.out.println("请输入0返回!");

n=input.nextInt();

break;

case 2:

System.out.println("序号\t"+"状态\t"+"名称\t\t"+"借出日期\t"+"借出次数");

for(int i=0;iname.length;i++){

if(name[i]!=null){

String state1 =((state[i]==0)?"可借":"已借");

String date1=((date[i]==0)?"":date[i]+"日");

String count1=count[i]+"次";

System.out.println((i+1)+"\t"+state1+"\t"+name[i]+"\t"+date1+"\t\t"+count1);

}

}

System.out.println("请输入0返回!");

n=input.nextInt();

break;

case 3:

System.out.println("请输入要删除的DVD名称:");

String name2=input.next();

int index=-1;

boolean a=false;

boolean flag1=false;

for(int i=0;iname.length;i++){

if(name2.equals(name[i])state[i]==1){

System.out.println("此DVD已经借出,无法删除");

a=true;

break;

}else if(name2.equals(name[i])state[i]==0){

a=true;

index=i;

flag1=true;

System.out.println("删除成功!");

break;

}

}

if(a==false){

System.out.println("没有找到相同名称的DVD!");

}

if(flag1){

for (int i=index;iname.length;i++){

if(i!=name.length-1){

name[i]=name[i+1];

state[i]=state[i+1];

date[i]=date[i+1];

count[i]=count[i+1];

}

name[name.length-1]=null;

state[name.length-1]=0;

date[name.length-1]=0;

count[name.length-1]=0;

}

}

System.out.println("请输入0返回!");

n=input.nextInt();

break;

case 4:

System.out.println("请输入要借出的DVD:");

 String name3=input.next();

 boolean a3=false;

 boolean b3=false;

 for(int i=0;iname.length;i++){

 if(name3.equals(name[i])  state[i]==1){

 System.out.println("该DVD已经借出");

 a3=true;

 }else if(name3.equals(name[i])  state[i]==0){

 do{

 System.out.println("请输入借出的日期:");

int m=input.nextInt();

 

 if(m31||m1){

 System.out.println("请重新输入日期:");

 b3=true;

 }else{

 date[i]=m; 

 state[i]=1;

 count[i]+=1;

 }

 

 }while(b3==true);

 System.out.println("借出成功!");

 a3=true;

 }

 }

 if(a3==false){

 System.out.println("没有该DVD");

 }

 System.out.println("请输入0返回!");

 n=input.nextInt();

break;

case 5:

System.out.println("请输入要归还的DVD:");

String name5=input.next();

boolean b5=false;

boolean m5=false;

for(int i=0;iname.length;i++){

if(name5.equals(name[i])  state[i]==1){

b5=true;

do{

System.out.println("请输入要归还DVD的日期:(归还日期请输入当月日期 1~31)");

int a5=input.nextInt();

if(a531){

System.out.println("请重新输入日期:");

m5=true;

}else if(a5date[i]){

System.out.println("借出日期是"+date[i]+"日\t输入的日期不能小于借出的日期,请重新输入日期:");

m5=true;

}else{

state[i]=0;

System.out.println("归还成功");

System.out.println("借出日期是:"+date[i]+"归还日期是:"+a5+"日\t租金一天一元:共"+(a5-date[i])+"元");

   date[i]=0;

   m5=false;

}

}while(m5==true);

}else if (name5.equals(name[i])  state[i]==0){

System.out.println("该DVD未借出,不可归还!");

b5=true;

}

}

if(b5==false){

System.out.println("没有该名称的DVDV");

}

System.out.println("请输入0返回!");

 n=input.nextInt();

break;

case 6:

n=1;

System.out.println("程序退出!");

break;

default:

if(n==0){

}else{

System.out.println("输入错误!请重新输入!");

n=0;

}

break;

}

}while(n==0);

System.out.println("谢谢使用!");

}

}

看看有没有问题 好久之前的了

java记事本源代码

给你个做好了的Java的源程序的记事本,自己看看就行了的,不怎么难的···

import java.awt.*;

import java.awt.event.*;

import java.io.*;

import javax.swing.*;

public class MyNotepad implements ActionListener{

private JFrame frame=new JFrame("新记事本");

private JTextArea jta=new JTextArea();

private String result="";

private boolean flag=true;

private File f;

private JButton jb=new JButton("开始");

private JTextField jtf=new JTextField(15);

private JTextField jt=new JTextField(15);

private JButton jbt=new JButton("替换为");

private JButton jba=new JButton("全部替换");

private Icon ic=new ImageIcon("D:\\java课堂笔记\\GUI\\11.gif");

private String value;

private int start=0;

private JFrame jf=new JFrame("查找");

private JFrame jfc=new JFrame("替换");

@Override

public void actionPerformed(ActionEvent e) {

String comm=e.getActionCommand();

if("新建".equals(comm)){

if(!(frame.getTitle().equals("新记事本"))){

if(!flag){

write();

newNew();

}else{

JFileChooser jfc=new JFileChooser("D:\\java课堂笔记");

int returnVal = jfc.showDialog(null,"保存为");

if(returnVal == JFileChooser.APPROVE_OPTION) {//选择文件后再执行下面的语句,保证了程序的健壮性

f=jfc.getSelectedFile();

flag=false;

write();

}

}

}else if(!(jta.getText().isEmpty())){

JFileChooser jfc=new JFileChooser("D:\\java课堂笔记");

int returnVal = jfc.showDialog(null,"保存为");

if(returnVal == JFileChooser.APPROVE_OPTION) {//选择文件后再执行下面的语句,保证了程序的健壮性

f=jfc.getSelectedFile();

flag=false;

write();

newNew();

}

}else{

newNew();

}

}else if("打开".equals(comm)){

JFileChooser jfc=new JFileChooser("D:\\java课堂笔记");

jfc.setDialogType(JFileChooser.OPEN_DIALOG);

int returnVal = jfc.showOpenDialog(null);

if(returnVal == JFileChooser.APPROVE_OPTION) {//选择文件后再执行下面的语句,保证了程序的健壮性

f=jfc.getSelectedFile();

frame.setTitle(f.getName());

result=read();

flag=false;

value=result;

jta.setText(result);

}

}else if("保存".equals(comm)){

JFileChooser jfc=new JFileChooser("D:\\java课堂笔记");

if(flag){

int returnVal = jfc.showDialog(null,"保存为");

if(returnVal == JFileChooser.APPROVE_OPTION) {//选择文件后再执行下面的语句,保证了程序的健壮性

f=jfc.getSelectedFile();

flag=false;

write();

}

}else{

write();

}

}else if("另存".equals(comm)){

JFileChooser jfc=new JFileChooser("D:\\java课堂笔记");

int returnVal = jfc.showDialog(null,"另存");

if(returnVal == JFileChooser.APPROVE_OPTION) {//选择文件后再执行下面的语句,保证了程序的健壮性

f=jfc.getSelectedFile();

write();

}

}else if("退出".equals(comm)){

System.exit(0);

}else if("撤销".equals(comm)){

jta.setText(value);

}else if("剪切".equals(comm)){

value=jta.getText();

jta.cut();

}else if("复制".equals(comm)){

jta.copy();

}else if("粘贴".equals(comm)){

value=jta.getText();

jta.paste();

}else if("删除".equals(comm)){

value=jta.getText();

jta.replaceSelection(null);

}else if("全选".equals(comm)){

jta.selectAll();

}else if("查找".equals(comm)){

value=jta.getText();

jf.add(jtf,BorderLayout.CENTER);

jf.add(jb,BorderLayout.SOUTH);

jf.setLocation(300,300);

jf.pack();

jf.setVisible(true);

jf.setDefaultCloseOperation(JFrame.DISPOSE_ON_CLOSE);

}else if("替换".equals(comm)){

value=jta.getText();

GridLayout gl=new GridLayout(3,3);

JLabel jl1=new JLabel("查找内容:");

JLabel jl2=new JLabel("替换为:");

jfc.setLayout(gl);

jfc.add(jl1);

jfc.add(jtf);

jfc.add(jb);

jfc.add(jl2);

jfc.add(jt);

jfc.add(jbt);

JLabel jl3=new JLabel();

JLabel jl4=new JLabel();

jfc.add(jl3);

jfc.add(jl4);

jfc.add(jba);

jfc.setLocation(300,300);

jfc.pack();

jfc.setVisible(true);

jfc.setDefaultCloseOperation(JFrame.DISPOSE_ON_CLOSE);

}else if("版本".equals(comm)){

JDialog jd=new JDialog(frame,"关于对话框");

jd.setSize(200,200);

JLabel l=new JLabel("哈哈哈哈哈哈哈哈哈哈呵呵呵呵呵呵呵呵呵呵呵呵呵");

jd.add(l,BorderLayout.CENTER);

jd.setLocation(100,200);

jd.setSize(300,300);

jd.setVisible(true);

// jd.pack();

jd.setDefaultCloseOperation(JDialog.DISPOSE_ON_CLOSE);

}else if("开始".equals(comm)||"下一个".equals(comm)){

String temp=jtf.getText();

int s=value.indexOf(temp,start);

if(value.indexOf(temp,start)!=-1){

jta.setSelectionStart(s);

jta.setSelectionEnd(s+temp.length());

jta.setSelectedTextColor(Color.GREEN);

start=s+1;

jb.setText("下一个");

// value=value.substring(s+temp.length());//不能截取字串

}else {

JOptionPane.showMessageDialog(jf, "查找完毕!", "提示", 0, ic);

jf.dispose();

}

}else if("替换为".equals(comm)){

String temp=jtf.getText();

int s=value.indexOf(temp,start);

if(value.indexOf(temp,start)!=-1){

jta.setSelectionStart(s);

jta.setSelectionEnd(s+temp.length());

jta.setSelectedTextColor(Color.GREEN);

start=s+1;

jta.replaceSelection(jt.getText());

}else {

JOptionPane.showMessageDialog(jf, "查找完毕!", "提示", 0, ic);

jf.dispose();

}

}else if("全部替换".equals(comm)){

String temp=jta.getText();

temp=temp.replaceAll(jtf.getText(), jt.getText());

jta.setText(temp);

}

}

public String read(){

String temp="";

try {

FileInputStream fis = new FileInputStream(f.getAbsolutePath());

byte[] b=new byte[1024];

while(true){

int num=fis.read(b);

if(num==-1)break;

temp=temp+new String(b,0,num);

}

fis.close();

} catch (Exception e1) {

e1.printStackTrace();

}

return temp;

}

public void write(){

try {

FileOutputStream fos=new FileOutputStream(f);

fos.write(jta.getText().getBytes());

fos.close();

} catch (Exception e) {

e.printStackTrace();

}

}

public void newNew(){

frame.dispose();

new MyNotepad();

flag=true;

}

public MyNotepad(){

JMenuBar jmb=new JMenuBar();

String[] menuLab={"文件","编辑","帮助"};

String[][] menuItemLab={{"新建","打开","保存","另存","退出"},

{"撤销","剪切","复制","粘贴","删除","全选","查找","替换"},

{"版本"}};

for(int i=0;imenuLab.length;i++){

JMenu menu=new JMenu(menuLab[i]);

jmb.add(menu);

for(int j=0;jmenuItemLab[i].length;j++){

JMenuItem jmi=new JMenuItem(menuItemLab[i][j]);

menu.add(jmi);

jmi.addActionListener(this);

}

}

frame.setJMenuBar(jmb);

jta.setLineWrap(true);//自动换行

JScrollPane jsp=new JScrollPane(jta);//滚动窗口面板

frame.add(jsp);

jb.addActionListener(this);

jbt.addActionListener(this);

jba.addActionListener(this);

frame.setLocation(200,50);

frame.setSize(620,660);

frame.setVisible(true);

frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);

}

public static void main(String[] args) {

new MyNotepad();

}

}


当前题目:java源代码内容 java源代码怎么运行
本文路径:http://scyanting.com/article/dopdjdi.html