Discussion:
[問題] abstract class???
(时间太久无法回复)
大學生
2006-10-03 15:33:51 UTC
Permalink
有個abstract class叫image
我在API看到
setIconImage(Image image)
請問一下裡面的Image image要怎麼放?
可以舉例一下嗎?
image是一個abstract class
不能new一個新的object
請問一下這個要怎麼用?
小弟不才
懇請高手幫忙一下...
3Q

--
※ 發信站: 批踢踢實業坊(ptt.cc)
◆ From: 59.112.234.212
痞子軍團團長
2006-10-03 17:18:43 UTC
Permalink
※ 引述《yorjing (大學生)》之銘言:
: 有個abstract class叫image

基本上,class 的名字開頭第一個字母請用大寫...
(Java 是 case sensitive 的... 你這樣也可以說是打錯字... [逃])

: 我在API看到
: setIconImage(Image image)

下次記得告訴別人是哪個 class 的 method
雖然 API 的 index 很好用,但是沒事不會想去用他...
(尤其是 g 跟 s,實在嚇死人的多)

: 請問一下裡面的Image image要怎麼放?
: 可以舉例一下嗎?
: image是一個abstract class
: 不能new一個新的object
: 請問一下這個要怎麼用?
: 小弟不才
: 懇請高手幫忙一下...
: 3Q

本草綱目除了記載 Image 是 abstract class 之外
在記載 abstract class 的上兩行,還會出現

Direct Known Subclasses:
BufferedImage, VolatileImage

雖然說這個對你好像沒啥幫助,不過先記得一下
因為你要指著 BufferedImage 說他是 Image,警察也抓不了你

然後是看到 ImageIO 這個 class
發現有這個 method

read(File input) ,回傳 BufferedImage



當然還有一些其他偷吃步的方法...
例如像用 ImageIcon,然後再 getImage();



====
不過說真的... 我真的不知道沒有 ImageIO 要怎麼弄出一個 Image 物件...
這邊的硬幹方法就先參考參考... \囧/


--
 侃侃長論鮮窒礙  網站:http://www.psmonkey.idv.tw
 眾目睽睽無心顫  個人版:telnet://legend.twbbs.org
 煢居少聊常人事 
 殺頭容易告白難  歡迎參觀 Java 版(@ptt.cc)精華區 \囧/

--
※ 發信站: 批踢踢實業坊(ptt.cc)
◆ From: 61.228.195.179
2006-10-03 17:25:30 UTC
Permalink
※ 引述《yorjing (大學生)》之銘言:
: 有個abstract class叫image
: 我在API看到
: setIconImage(Image image)
: 請問一下裡面的Image image要怎麼放?
: 可以舉例一下嗎?
: image是一個abstract class
: 不能new一個新的object
: 請問一下這個要怎麼用?
: 小弟不才
: 懇請高手幫忙一下...
: 3Q

可以使用 java.awt.Toolkit 的
getImage(String filename)
createImage(String filename)
就可以取得 GIF, JPG 等等的圖檔

如果是 Applet 的話
可以用 java.applet.AppletContext 的
getImage(URL url)

這些 method 都會回傳一個 Image object

--
※ 發信站: 批踢踢實業坊(ptt.cc)
◆ From: 61.230.69.164
會走路的冰塊
2006-10-03 18:43:55 UTC
Permalink
※ 引述《PsMonkey (痞子軍團團長)》之銘言:
: 不過說真的... 我真的不知道沒有 ImageIO 要怎麼弄出一個 Image 物件...
: 這邊的硬幹方法就先參考參考... \囧/

不知道有沒有誤解這句話 @o@

BufferedImage 可以直接用 new 的方式產生一個。

然後再 setRGB 就行了。


我產生 VolatileImage 的方式就很麻煩了,基本上是 Google 來的 XD

--


我想你會衰成這樣都是我害的
---- Tizzy Mac

緊張的麥金塔?這是誰(._.?)

--
※ 發信站: 批踢踢實業坊(ptt.cc)
◆ From: 59.104.231.81
大學生
2006-10-04 01:06:45 UTC
Permalink
※ 引述《JavaSnake (蛇)》之銘言:
: ※ 引述《yorjing (大學生)》之銘言:
: : 有個abstract class叫image
: : 我在API看到
: : setIconImage(Image image)
: : 請問一下裡面的Image image要怎麼放?
: : 可以舉例一下嗎?
: : image是一個abstract class
: : 不能new一個新的object
: : 請問一下這個要怎麼用?
: : 小弟不才
: : 懇請高手幫忙一下...
: : 3Q
: 可以使用 java.awt.Toolkit 的
: getImage(String filename)
: createImage(String filename)
: 就可以取得 GIF, JPG 等等的圖檔
問題是
Toolkit也是一個abstract method阿
它也不能new出一個新的object....XD
: 如果是 Applet 的話
: 可以用 java.applet.AppletContext 的
: getImage(URL url)
: 這些 method 都會回傳一個 Image object

--
※ 發信站: 批踢踢實業坊(ptt.cc)
◆ From: 61.216.150.61
愚者
2006-10-04 01:09:15 UTC
Permalink
※ 引述《yorjing (大學生)》之銘言:
: 問題是
: Toolkit也是一個abstract class阿
: 它也不能new出一個新的object....XD

http://tinyurl.com/lpxu3

--
※ 發信站: 批踢踢實業坊(ptt.cc)
◆ From: 163.26.34.20
痞子軍團團長
2006-10-04 02:27:47 UTC
Permalink
※ 引述《WalkingIce (會走路的冰塊)》之銘言:
: ※ 引述《PsMonkey (痞子軍團團長)》之銘言:
: : 不過說真的... 我真的不知道沒有 ImageIO 要怎麼弄出一個 Image 物件...
: : 這邊的硬幹方法就先參考參考... \囧/
: 不知道有沒有誤解這句話 @o@
: BufferedImage 可以直接用 new 的方式產生一個。
: 然後再 setRGB 就行了。
: 我產生 VolatileImage 的方式就很麻煩了,基本上是 Google 來的 XD

喔... 我是專指「讀檔案變成一個 Image 物件」啦

另外就是 yorjing 苦主...
new 一個物件是最基本的方法
但是不代表「只有這個方法」阿

abstract 的 class,還是有「可以直接拿來用」的 method
(密技:找 static 的)

如果還想要課外閱讀的話...
可以去找 singleton 的 design pattern...
(我只會用,沒有實際讀過 XDXD)

--
 侃侃長論鮮窒礙  網站:http://www.psmonkey.idv.tw
 眾目睽睽無心顫  個人版:telnet://legend.twbbs.org
 煢居少聊常人事 
 殺頭容易告白難  歡迎參觀 Java 版(@ptt.cc)精華區 \囧/

--
※ 發信站: 批踢踢實業坊(ptt.cc)
◆ From: 61.228.195.179
大學生
2006-10-04 02:57:43 UTC
Permalink
※ 引述《qrtt1 (愚者)》之銘言:
: ※ 引述《yorjing (大學生)》之銘言:
: : 問題是
: : Toolkit也是一個abstract class阿
: : 它也不能new出一個新的object....XD
: http://tinyurl.com/lpxu3
我傻眼了
有看沒有懂?
可以舉例嗎?

--
※ 發信站: 批踢踢實業坊(ptt.cc)
◆ From: 61.216.150.61
大學生
2006-10-04 03:06:59 UTC
Permalink
※ 引述《PsMonkey (痞子軍團團長)》之銘言:
: ※ 引述《WalkingIce (會走路的冰塊)》之銘言:
: : 不知道有沒有誤解這句話 @o@
: : BufferedImage 可以直接用 new 的方式產生一個。
: : 然後再 setRGB 就行了。
: : 我產生 VolatileImage 的方式就很麻煩了,基本上是 Google 來的 XD
: 喔... 我是專指「讀檔案變成一個 Image 物件」啦
: 另外就是 yorjing 苦主...
: new 一個物件是最基本的方法
: 但是不代表「只有這個方法」阿
: abstract 的 class,還是有「可以直接拿來用」的 method
: (密技:找 static 的)
: 如果還想要課外閱讀的話...
: 可以去找 singleton 的 design pattern...
: (我只會用,沒有實際讀過 XDXD)
可以示範一下嗎?
我沒看過這種方法
我JAVA才學一年而已...XD

--
※ 發信站: 批踢踢實業坊(ptt.cc)
◆ From: 61.216.150.61
大學生
2006-10-04 03:28:38 UTC
Permalink
※ 引述《WalkingIce (會走路的冰塊)》之銘言:
: ※ 引述《PsMonkey (痞子軍團團長)》之銘言:
: : 不過說真的... 我真的不知道沒有 ImageIO 要怎麼弄出一個 Image 物件...
: : 這邊的硬幹方法就先參考參考... \囧/
: 不知道有沒有誤解這句話 @o@
: BufferedImage 可以直接用 new 的方式產生一個。
: 然後再 setRGB 就行了。
: 我產生 VolatileImage 的方式就很麻煩了,基本上是 Google 來的 XD
import java.awt.*;
import javax.swing.*;
import java.awt.Toolkit;
import javax.imageio.ImageIO;
import java.io.*;
public class border extends JFrame
{
public border()
{
super("Border");
setLayout(new BorderLayout(20,20));
setSize(new Dimension(300,300));
setBackground(Color.GREEN);
setIconImage(new ImageIO().read(new File("D:/yorjing/java/duck.png")));

getContentPane().add(new JButton("North"),BorderLayout.NORTH);
getContentPane().add(new JButton("West"),BorderLayout.WEST);
getContentPane().add(new JButton("South"),BorderLayout.SOUTH);
getContentPane().add(new JButton("East"),BorderLayout.EAST);
getContentPane().add(new JButton("Center"),BorderLayout.CENTER);

setDefaultCloseOperation(EXIT_ON_CLOSE);
setVisible(true);
}

public static void main(String[] args)
{
new border();
}
}

ERROR description:
ImageIO() has private access in javax.imageio.ImageIO
抱歉
今天REPOST太多次了...

--
※ 發信站: 批踢踢實業坊(ptt.cc)
◆ From: 61.216.150.61
大學生
2006-10-04 03:50:55 UTC
Permalink
※ 引述《calais007 (淺水中)》之銘言:
: 看樣子你還沒搞懂public static的意義
: 基本上你只要直接用ImageIO.read(new File("file.png"));
: 這樣就可以了
: 至於為什麼有那個錯誤
: 我來猜的話應該是ImageIO的Constructor是被宣告成
: private ImageIO(){
: }
3Q
不過我有疑問的是
左上角一定要放圖嗎?
如果不放圖的話
要用啥麼方法做?

--
※ 發信站: 批踢踢實業坊(ptt.cc)
◆ From: 61.216.150.61
愚者
2006-10-04 16:36:47 UTC
Permalink
※ 引述《calais007 (淺水中)》之銘言:
: ※ 引述《***@bbs.sayya.org (foolish)》之銘言:
: : 一年!!! 好長的一段時間啊@@
: : 那總有學到static method的用法吧
: The Singleton Pattern有幾種方法
: 我只說我比較常用的一種
: 其實在Java API中就有採用這種方法
: 像Toolkit,Math,ImageIO就有這種味道
: 他的寫法就如這樣

[補] 延伸閱讀

Creational Patterns
http://en.wikipedia.org/wiki/Design_Patterns#Creational_patterns

--
※ 發信站: 批踢踢實業坊(ptt.cc)
◆ From: 163.26.34.213
良葛格
2006-10-04 20:49:26 UTC
Permalink
※ 引述《qrtt1 (愚者)》之銘言:
: ※ 引述《calais007 (淺水中)》之銘言:
: : The Singleton Pattern有幾種方法
: : 我只說我比較常用的一種
: : 其實在Java API中就有採用這種方法
: : 像Toolkit,Math,ImageIO就有這種味道
: : 他的寫法就如這樣
: [補] 延伸閱讀
: Creational Patterns
: http://en.wikipedia.org/wiki/Design_Patterns#Creational_patterns

我也補…XD
http://caterpillar.onlyfun.net/Gossip/DesignPattern/SingletonPattern.htm

--
良葛格學習筆記
http://caterpillar.onlyfun.net/Gossip/

--
※ 發信站: 批踢踢實業坊(ptt.cc)
◆ From: 60.248.126.81

继续阅读narkive:
Loading...