在eclipse中它给了我一堆语法错误,但我看到代码完全没问题???第14,23,27行有语法错误,但就像我说的那样,它们对我来说似乎完全没问题? :(
package me.slappy826.Everlost.ttf;
import java.awt.Font;
import java.io.InputStream;
import org.lwjgl.opengl.GL11;
import org.newdawn.slick.*;
public class SlickTTF
{
InputStream fontFile = org.newdawn.slick.util.ResourceLoader.getResourceAsStream("assets/everlost/Ubuntu-LI.ttf");
private static TrueTypeFont font;
private Font awtFont = null;
try
{
awtFont = Font.createFont(Font.TRUETYPE_FONT, fontFile);
awtFont = awtFont.deriveFont(20f);
font = new TrueTypeFont(awtFont, true);
} catch(Exception e) {}
public static void drawString(String s, int i, int j, Color color)
{
font.drawString(i, j, s, color);
}
}
答案 0 :(得分:1)
您不能在类级别范围内声明try-catch,只需将其放在方法中即可。下面是一个可能的构造函数初始化成员的示例:
public SlickTTF(){
try{
awtFont = Font.createFont(Font.TRUETYPE_FONT, fontFile);
awtFont = awtFont.deriveFont(20f);
font = new TrueTypeFont(awtFont, true);
}catch(Exception e){}
}
现在您可以创建一个SlickTTF对象SlickTTF example = new SlickTTF()
,它将正确初始化类属性