语法错误,但我没有看到错误

时间:2014-08-23 02:01:07

标签: java syntax

在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);
    }
}

1 个答案:

答案 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(),它将正确初始化类属性