
正文
高级java写的代码 java高级有哪些内容
提示:扫一扫查出行【扫一扫了解最新限行尾号】
复制提示
Java实验,代码怎么写?
Shape.java接口代码
public interface Shape {
public static final double PI = 3.14d;
public double area();
}
Circle.java圆类代码
public class Circle implements Shape {
private double radius;
public Circle(double radius) {
this.radius = radius;
}
@Override
public double area() {
return PI * this.radius * this.radius;
}
public double perimeter() {
return 2 * PI * this.radius;
}
}
Cylinder.java圆柱体类代码
public class Cylinder extends Circle {
private double height;
public Cylinder(double radius, double height) {
super(radius);
this.height = height;
}
public double area() {
return 2 * super.area() + super.perimeter() * this.height;
}
public double volume() {
return super.area() * this.height;
}
}
X5_3_6.java主类代码
public class X5_3_6 {
public static void main(String[] args) {
Circle cir1 = new Circle(5);
System.out.println("圆的面积为:" + cir1.area());
System.out.println("圆的周长为:" + cir1.perimeter());
Cylinder cy1 = new Cylinder(10, 15);
System.out.println("圆柱体的表面积为:" + cy1.area());
System.out.println("圆柱体的体积为:" + cy1.volume());
}
}
上面是我写的代码,下图是执行结果,麻烦看一下,是否可以。
相关问答
Q1: 用记事本写java代码怎么运行?
用记事本写完代码后运行方法如下:
1、用浏览器打开用记事本编写的代码
新建“文本文档”后,鼠标右键点击该文本文档,在菜单栏的“打开方式”选择“用记事本打开”,也可以设置默认打开方式为“记事本”;用记事本打开文本文档后,直接在该文档内根据自己的需要输入想要编辑的网页代码。
2、记事本写java代码怎么运行
首先,需要安装jdk并配置环境变量。然后,在命令行中,用javac命令编译用记事本编写的代码。下一步,在命令行中,用java命令执行编译后的结果。
代码是什么
代码是程序员用开发工具所支持的语言写出来的源文件,是一组由字符、符号或信号码元以离散形式表示信息的明确的规则体系。代码设计的原则包括唯一确定性、标准化和通用性、可扩充性与稳定性、便于识别与记忆、力求短小与格式统一以及容易修改等。
计算机源代码最终目的是将人类可读文本翻译成为计算机可执行的二进制指令,这种过程叫编译,它由通过编译器完成。源代码就是用汇编语言和高级语言写出来的地代码。目标代码是指源代码经过编译程序产生的能被 cpu直接识别二进制代码。
可执行代码就是将目标代码连接后形成的可执行文件,当然也是二进制的。
Q2: 求高手写个java代码!!!
代码如下高级java写的代码:
import java.util.Arrays;
class Circle {
private int radius;
public Circle(int radius) {
this.radius = radius;
}
public int getRadius() {
return radius;
}
public void setRadius(int radius) {
this.radius = radius;
}
@Override
public String toString() {
return "Circle [radius=" + radius + "]";
}
}
public class App {
public static void main(String[] args) throws CloneNotSupportedException {
// 创建一个包含5个元素高级java写的代码的数组
Circle[] circles = { new Circle(2), new Circle(10), new Circle(8), new Circle(4), new Circle(12) };
System.out.println(Arrays.toString(circles));
// 排序
Arrays.sort(circles, (x, y) - Integer.compare(x.getRadius(), y.getRadius()));
System.out.println(Arrays.toString(circles));
// 查找半径为 9 的圆
int index = Arrays.binarySearch(circles, 9, (x, y) - ((Circle)x).getRadius() - (int)y);
System.out.println(index =0 ? circles[index] : "没有找到半径为 9 的圆。");
// 查找半径为 10 的圆
index = Arrays.binarySearch(circles, 10, (x, y) - ((Circle)x).getRadius() - (int)y);
System.out.println(index =0 ? circles[index] : "没有找到半径为 10 的圆。");
// 拷贝数组
Circle[] circles2 = Arrays.copyOf(circles, circles.length);
System.out.println(Arrays.toString(circles2));
}
}
Q3: 1.用Java语言编写一个程序,判断一个年份是否是闰年。
以下是用Java编写的判断一个年份是否是闰年的示例代码:
Copy code
import java.util.Scanner;
public class LeapYear {
public static void main(String args[]) {
Scanner sc = new Scanner(System.in);
System.out.print("请输入待判断的年份:");
int year = sc.nextInt();
boolean isLeapYear = false;
if (year % 4 == 0) {
if (year % 100 == 0) {
if (year % 400 == 0) {
isLeapYear = true;
} else {
isLeapYear = false;
}
} else {
isLeapYear = true;
}
} else {
isLeapYear = false;
}
if (isLeapYear) {
System.out.println(year + "是闰年。");
} else {
System.out.println(year + "不是闰年。");
}
}
}
这个程序中,首先提示用户输入一个年份,然后使用一个布尔变量isLeapYear来存储程序是否判断为闰年,如果是闰年,则为true,否则为false。然后使用嵌套的if语句来判断年份是否为闰年。如果年份可以被4整除,则可能是闰年,然后判断它是否也可以被100整除。如果年份可以被100整除,则只有当它同时能被400整除时才是闰年。如果年份不是可以被4整除的,则不是闰年。
最后使用if语句和输出语句来告诉用户输入的年份是否是闰年。
Q4: java课程分享学Java怎么写出高质量的代码
学一门编程语言是进入IT行业的法宝,很多人在明确了自己的兴趣,明确了自己未来想从事的领域,明确了自己未来想成为一个什么样的程序员后,选择了学Java。不管学哪门编程语言,一定是要学会敲代码的,这是你不可逃避的。学Java,怎么写出高质量的Java代码?java课程认为这就是你得高度集中精力关心的问题。
怎么写出高质量的Java代码?
1、坚持
没有谁能够随随便便就成功,也没有谁能够随随便便敲一手高质量的Java代码,就算你现在看着别人敲代码怎么那么轻松,他们的轻松来源于坚持多次的练习,你要是想让自己的Java代码变得高质量,那么就离不开你长久的坚持,只有投入足够多的时间,做出足够的练习,你才能够获得质的飞跃。
2.专业
Java专业知识是基本,好比盖楼,地基不稳,怎么也盖不出参天大楼。Java代码的敲写,很多的时候,也是一样的,你连最基础的Java理论知识都没有掌握好,然后就想跑在其他人的前面,敲出高质量的Java代码,那么简直就是做梦。起初,Java专业知识学起来是比较枯燥的,但是你必须要好好的去研究跟掌握。
3.模仿
你是怎么开始进入Java代码的敲写的,很多朋友回想一下,你是不是从模仿开始的,仿照其他人已经写好的代码跟着写一遍,写两遍,甚至是写三遍。模仿很重要,同时思考也很重要,熟练来源于练习,做好和作对源于不断的实践,你要想敲出高质量的Java代码,那么你一定得好好研究怎么样模仿的效果最好。
Q5: 怎样编写高质量的Java代码
如何编写高质量代码,从而提升系统性能。想必是很多程序员都非常注意的地方,最近总结了一些要点,特此记录在案。 所谓代码高可读性和高可维护性,其实就是应该有着规范的Java程序设计风格,在开发程序过程中,从近期目标看是应该着眼于功能实现,但是只能解一时之渴,而不思长远之计,确不可取,一个杂乱无序的代码让人看后有一种不解其意,心绪烦乱的感觉。所以,作为一名合格的程序员,一定要确定一个观点就是你编写出来的代码不只是给你一个人看的,还是给别人看的,所以在开发过程中文件注释头,java源文件编排格式,方法体的具体业务含义的注释都是必须的。 如程序注释就分为块注释与行注释 。例如块注释为
/**
* @param
@return
*/
行注释
/** **/或者 //
再者就是方法的命名也需要多加斟酌,一个业务方法,如果取最能体现体现该业务的名字,这样读者几乎不需要看代码便可以知道该方法具体用途。 高质量的代码其实很多时候都在一些小细节中体现,对于每个程序员来说一个for循环都会写,可是却有很多人没有能在代码中体现出高效性来,在这里我用简单的一个例子来说明:一个ArrayList需要遍历。 一般人会写成for(int i=0;ilist.size();i++) 这有问题吗?没有问题,能够完成程序员的意图的功能。
可是它高效吗?你有注意到这点吗?其实问题就出现在list.size()方法,这个方法是计算一个list的大小,本身它不会存在任何问题,可是将它放在了一个for()循环中的话,就很有问题了,因为如果一个N次的for循环,这个方法就需要被执行N次,这样的代码就造成计算机花很多的时间去做没有意义的事情,而本来这个list.size()方法只需要计算一次的就可以了,所以我们把计算list大小的方法放在for循环外面去定义的话,效率就可以得到提高
如: int size = list.size();
for(int i=0;isize;i++)
关于For循环还有一个要注意的地方,就是在for循环里面去New一个新对象。如:
for(int i=0;i10;i++){
A a = new A();
}
是不是怎么看都不会有问题,是的在语法上。或者是执行业务处理逻辑的时候,它都是没有任何问题的,可是这是从语言级别去看待问题,没有深入到它的实现机制上去看待问题。
在介绍这个问题的之前我想先简单说下关于java内存的机制:java是如何在内存中保存对象,我们回到A a=new A()在内存中是怎么分配这个问题来,
首先在栈中开辟一段空间存放引用a,然后在堆中开辟一段空间存放新建的A对象,同时引用a指向堆中新建得A对象,a所指代的对象地址为A在堆中地址。根据javaGC机制,只有对象已经没有引用指向它的时候,才有可能被GC给回收,所以基于这种机制的话,上述的一个For循环就会存在很大的效率问题了,如果循环有1000次,在内存中栈会有1000个引用,而堆中也会有1000个新生成的对象,同时1000个引用会相应指向1000个新生成的对象,即使这个for循环结束,也不会有任何改变。但是实际上1000个引用的生成完全是没有必要的,如果有着编写高性能代码的想法的话:像这样的for循环完全可以这样写:
A a = null;
for(int i=0;i1000;i++){
a = new A();
...
}
这样的代码在内存中便只会在栈中生成一个指向,每当一个for循环结束后,这个指向会指向下一个新生成的对象,前面生成的对象就会失去指向,这样GC就有可能更加快速的回收这些已经失去功能的对象。 在java中其实new 一个对象是非常耗费时间的,特别是重量级对象,所以每次在new 对象的时候一定需要考虑清楚是不是非的生成一个对象才能完成我的业务需求呢?总之能够根据实际情况,然后举一反三的话,我相信大家编写出来的代码就会更加高效了。
其次是针对同步的慎重考虑,因为我们一旦用了synchronized这个关键字后,就很可能丧失了并行的功效,所以在开发的过程中需要注意到线程是不是会对共有的资源进行处理,然后在慎重选择Synchronized 关键字,其实大家可以考虑用ThreadLocal这个类,它的优点是既保证同步的情况下仍然能保证并行,缺点是会占用更多的空间去换取换取时间。
最后,便是在j2ee开发过程中对数据库操作的优化,在这里我只针对代码级别的优化,关于数据库级别的我不涉及。大家编写SQL的时候会不会注意到一些原则,在这里我将罗列一些需要注意的要点。(总结肯定不会很全,我希望如果有大虾能给予更多的经验指导,在下将会感激万分。)
(1)在搜索子句的列名边要避免函数、算术操作符和其它的表达式,除非建立基于函数的索引
(2)使用复合索引的第一个列名
(3)SELECT子句中避免使用 ‘*’
(4)如果可能尽量多用"Commit"
(5)避免在索引列上使用IS null和Is not null
(6)用Union -all替换Union(如果可能的话)
(7)Oracel 采用自下而上的顺序解析WHERE子句,可以过滤掉最大数量记录的条件写在WHERE子句的末尾
(8)between谓词可以转化为=and=子句,比如:price between 10 and 20
可以转化为 price= 10 and =20
(9)like子句中匹配值的第一个字符是常量,也可以进行转换, 例如:
like “sm%”可以转换成 =“sm” and “sn”
(10)在子查询,exists和in要比not exists和not in执行得快,因为对于exists和in,优化器只要找到一条记录就可以返回TRUE,而对于not exists和not in则必须检查所有的值。
以上10条总结如果在编写sql的时候能注意到的话,将会在一定程度上提高java跟数据交互的性能。
那么除了在SQL上下功夫来提高性能之外,编写合适的事务处理也将带来一些性能提高。我们都知道事务具有:原子性,隔离性,一致性,持久性,所以在使用事务的时候肯定是牺牲并发性能为代价的。特别是一个涉及update的事务处理的时候,数据库会在表上加上排他锁,而一个数据资源只要被一个事务放置了排他锁,其他事务将不能放上排他锁,一定要一直等到事务结束后才释放。所以在这种情况下的,并发性就会被抹杀掉了。我们不能改变这种加锁的机制,但是我们可以用另外一种方式来达到一定程度的性能提升,那就是根据实际情况将一个大事务分解成小事务来处理。简而言之就是减低事务放置排他锁和释放排他锁的时间间隔,这样可以让其他的事务能更快的访问到数据资源。而关于大事务分解一定要小心使用,如果使用不恰当的话很可能会产生意想不到的数据不一致错误。
关于高级java写的代码和java高级有哪些内容的介绍到此就结束了,不知道你从中找到你需要的信息了吗 ?如果你还想了解更多这方面的信息,记得收藏关注本站。








