Java 关于paintComponent函数问题

Java 关于paintComponent函数问题,第1张

superpaintComponent(g)是父类JPanel里的方法,会把整个面板用背景色重画一遍,起到清屏的作用

awt控件中是在paint方法进行绘制,

所以在awt控件继承时,只要简单的覆盖paint方法就可以了。

而在swing控件中,paint方法会依次调用paintcomponent, paintborder, paintchildren三个方法,后两者一般默认即可,所以swing编程时,如果继承jcomponent或者其子类,要覆盖paintcomponent而不是paint方法,这个在sun的教程中有说,jdk源程序中也可以很容易的看出来。

public class A{\x0d\ String S="";\x0d\ \x0d\ public String process(){\x0d\ 处理字符串S;\x0d\ retrun 处理过的字符串S;\x0d\ }\x0d\public static void main(String []args){\x0d\ A a=new A();\x0d\aprocess() ;\x0d\ Systemoutprintln(aS);\x0d\}\x0d\}

 

请楼主参考一下我的代码,祝你学习愉快

 

import javaio;

import javautilScanner; //导入Scanner对象;

public class CompareTwoNumbers{

public static void main(String args[]){

Double number1,number2;

Systemoutprint("请输入第一个数:");

Scanner scanner = new Scanner(Systemin);//实例化一个Scanner对象;

number1 = scannernextDouble();//从键盘输入一个实数赋值给number1;

Systemoutprint("请输入第二个数:");

number2 = scannernextDouble();//从键盘输入一个实数赋值给number1;

if(number1<number2)

Systemoutprintln("较大的数:"+number2);

else if (number1>number2) Systemoutprintln("较大的数:"+number1);

else Systemoutprintln("两个数相同");

}

}

intern() 方法返回字符串对象的规范化表示形式。

它遵循以下规则:对于任意两个字符串 s 和 t,当且仅当 sequals(t) 为 true 时,sintern() == tintern() 才为 true。

语法

public String intern()

参数

返回值

一个字符串,内容与此字符串相同,但一定取自具有唯一字符串的池。

实例

public class Test {

   public static void main(String args[]) {

       String Str1 = new String("wwwrunoobcom");

       String Str2 = new String("WWWRUNOOBCOM");

       Systemoutprint("规范表示:" );

       Systemoutprintln(Str1intern());

       Systemoutprint("规范表示:" );

       Systemoutprintln(Str2intern());    }}

首先一个类可能有那么多方法的,比如Print系列的,Strem系列的,是因为没有C++的模版函数,所以重载了很多如果是用户自己设计的话,不建议设计那么多方法,

另外如果有一个100方法的类,你想找50个 也不用一点一点翻,如果你有开发工具,比如eclipse 有一个视图 是 大纲,在大纲视图中可以直接看你先看的方法,只要你一点 就知道到了

包的那个概念 你理解的不错 就是这样理解的

欢迎分享,转载请注明来源:内存溢出

原文地址: https://outofmemory.cn/langs/12175336.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-05-21
下一篇 2023-05-21

发表评论

登录后才能评论

评论列表(0条)

保存